最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

insertText

イメージまたはビデオへのテキストの挿入

説明

RGB = insertText(I,position,text) は、text が挿入されたトゥルーカラー イメージを返します。入力イメージ I は、トゥルーカラー イメージまたはグレースケール イメージになります。

RGB = insertText(I,position,numericValue) は、数値が挿入されたトゥルーカラー イメージを返します。

RGB = insertText(___,Name,Value) は、1 つ以上の Name,Value 引数ペアによって指定された追加オプションを使用します。

すべて折りたたむ

イメージを読み取ります。

I = imread('board.tif');

小数を含むテキストを作成します。

text_str = cell(3,1);
conf_val = [85.212 98.76 78.342]; 
for ii=1:3
   text_str{ii} = ['Confidence: ' num2str(conf_val(ii),'%0.2f') '%'];
end

テキスト ボックスの位置と色を定義します。

position = [23 373;35 185;77 107]; 
box_color = {'red','green','yellow'};

新しいフォント サイズ、ボックスの色、不透明性およびテキストの色を使用してテキストを挿入します。

RGB = insertText(I,position,text_str,'FontSize',18,'BoxColor',...
    box_color,'BoxOpacity',0.4,'TextColor','white');

イメージを表示します。

figure
imshow(RGB)
title('Board');

イメージを読み取ります。

I = imread('peppers.png');

テキストと値の ( x,_y_ ) 位置を定義します。

position =  [1 50; 100 50];
value = [555 pi];

左下をアンカー ポイントとして使用してテキストを挿入します。

RGB = insertText(I,position,value,'AnchorPoint','LeftBottom');

数値テキストが挿入されたイメージを表示します。

figure
imshow(RGB),title('Numeric values');

非 ASCII 文字 (U+014C) を表示します。

OWithMacron=native2unicode([hex2dec('C5') hex2dec('8C')],'UTF-8');
RGB = insertText(RGB,[256 50],OWithMacron,'Font','LucidaBrightRegular','BoxColor','w');

数値テキストが挿入されたイメージを表示します。

figure
imshow(RGB),title('Numeric values');

入力引数

すべて折りたたむ

入力イメージ。M x N x 3 のトゥルーカラー イメージ、または M 行 N 列の 2 次元グレースケール イメージとして指定します。

データ型: single | double | int16 | uint8 | uint16

Unicode テキスト。1 つの UNICODE テキスト文字列、または長さ M の UNICODE 文字列の cell 配列として指定します。ここで、M は position の行数です。関数は、ピクセルを text の値で上書きします。cell 配列の長さと position 行列の行数は等しくなければなりません。1 つの文字列を指定すると、関数はそれを position 行列のすべての位置に対して使用します。ほとんどの Unicode フォントには ASCII 文字が含まれます。1 つのフォントで、英語以外の文字と、数値を含む英語の文字を表示できます。

データ型: char

数値テキスト。スカラーまたはベクトルとして指定します。スカラー値を指定すると、すべての位置にその値が使用されます。ベクトル長と position 行列の行数は等しくなければなりません。数値は、sprintf 形式 '%0.5g' を使用して文字ベクトルに変換されます。

データ型: char

挿入テキストの位置。ベクトルまたは [x y] 座標の M 行 2 列の行列として指定します。各行は、テキストの境界ボックスの AnchorPoint の [x y] 座標を表します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

名前と値のペアの引数

オプションの引数 Name,Value のコンマ区切りペアを指定します。Name は引数名で、Value は対応する値です。Name は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を、任意の順番で指定できます。

例: 'AnchorPoint','LeftTop'

テキストのフォント フェース。'Font' と文字ベクトルで構成されるコンマ区切りのペアとして指定します。フォント フェースは、システムにインストールされている使用可能な TrueType フォントでなければなりません。システムで使用可能なフォントの一覧を表示するには、MATLAB® コマンド プロンプトで listTrueTypeFonts と入力します。

データ型: char

フォント サイズ。'FontSize' と [1,200] の範囲の正の整数で構成されるコンマ区切りのペアとして指定します。

データ型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

テキストの色。'TextColor' と文字ベクトル、文字ベクトルの cell 配列、または行列で構成されるコンマ区切りのペアとして指定します。文字ベクトルごとに異なる色を指定したり、すべての文字ベクトルに 1 つの色を指定したりできます。

  • テキスト文字ベクトルごとに色を指定するには、TextColor を M 個の色を表す文字ベクトルの cell 配列に設定します。または、文字ベクトルの RGB カラー値の M 行 3 列の行列に設定できます。

  • すべてのテキスト文字ベクトルに 1 つの色を指定するには、TextColor を色を表す文字ベクトル、または赤、緑および青の値の [R G B] ベクトルに設定します。

  • RGB 値は、イメージ データ型の範囲内でなければなりません。サポートされる色は、'blue''green''red''cyan''magenta''yellow''black' および 'white' です。

データ型: cell | char | uint8 | uint16 | int16 | double | single

テキスト ボックスの色。'BoxColor' と文字ベクトル、文字ベクトルの cell 配列、または行列で構成されるコンマ区切りのペアとして指定します。テキスト ボックスごとに異なる色を指定したり、すべてのテキスト ボックスに 1 つの色を指定したりできます。

  • テキスト ボックスごとに色を指定するには、BoxColor を M 個の色を表す文字ベクトルの cell 配列に設定します。または、M 個の RGB (赤、緑、青) 文字ベクトルの色値の M 行 3 列の行列に設定できます。

  • すべてのテキスト ボックスに 1 つの色を指定するには、BoxColor を色を表す文字ベクトルまたは [R G B] ベクトルに設定します。[R G B] ベクトルには、赤、緑、青の値が含まれます。

  • RGB 値は、イメージ データ型の範囲内でなければなりません。サポートされる色は、'blue''green''red''cyan''magenta''yellow''black' および 'white' です。

データ型: cell | char | uint8 | uint16 | int16 | double | single

テキスト ボックスの不透明度。'BoxOpacity' と [0,1] の範囲のスカラー値で構成されるコンマ区切りのペアとして指定します。値 0 は、完全に透明なテキスト ボックス、またはボックスなしに対応します。値 1 は、完全に不透明なテキスト ボックスに対応します。

データ型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

テキスト ボックスの基準点。'AnchorPoint' と文字ベクトル値で構成されるコンマ区切りのペアとして指定します。アンカー ポイントは、テキスト ボックスの相対位置を定義します。テキスト ボックスのアンカー ポイントを、テキストに対応する position によって定義される [x,y] 座標に配置することによって、テキスト ボックスの位置を指定できます。たとえば、テキスト ボックスの中心を position 入力で指定した [x,y] 座標に配置するには、AnchorPointCenter に設定します。

サポートされる位置は、LeftTopLeftCenterLeftBottomCenterTopCenterCenterBottomRightTopRightCenter および RightBottom です。

データ型: char

出力引数

すべて折りたたむ

出力イメージ。指定のテキストが挿入された M x N x 3 のトゥルーカラー イメージとして返されます。

制限

  • 出力イメージに文字が表示されていない場合、フォントにその文字が含まれなかったことを意味します。異なるフォントを選択します。システムで使用可能なフォントの一覧を表示するには、MATLAB プロンプトで listTrueTypeFonts と入力します。

  • フォント サイズを大きくすると、前処理の時間とメモリ使用量も増加します。

  • 関数 insertText は、特定の複合文字では機能しません。たとえば、文字コードに対応する 1 つのグリフをレンダリングすると、隣接するグリフの位置、形状またはサイズに影響する場合、テキストを挿入することはできません。

拡張機能

R2013a で導入