解像度を落とさずに、​画像にテキストを挿入​することは可能ですか​?

조회 수: 15 (최근 30일)
MathWorks Support Team
MathWorks Support Team 2014년 1월 9일
답변: MathWorks Support Team 2014년 1월 9일
解像度を落とさずに画像にテキストを挿入する方法を教えてください。テキストオブジェクトとして上書きするのではなく、画像データそのものを編集して挿入する方法を教えてください。

채택된 답변

MathWorks Support Team
MathWorks Support Team 2014년 1월 9일
下記手順に関するプログラミングを行うことで、実現可能です。
1. オリジナル画像の読み込み
2. テキスト作成とキャプチャ
3. 画像のピクセルをテキストのピクセルと入れ替え/表示
以下は、画像に「テキスト」という文字列を挿入するコマンド例です。
(なお、R13,R13SP1,R13SP2 をご利用の方は、ページ下部より 'street1.jpg' をダウンロードすることが可能です。)
%1.オリジナル画像の読み込み
I = imread('street1.jpg'); % データタイプ:uint8、サイズ:480×640×3
image(I),axis off
%2.テキスト作成とキャプチャ
hf = figure('color','white','units','normalized','position',[.1 .1 .8 .8]);
image(ones(size(I)));
set(gca,'units','pixels','position',[5 5 size(I,2)-1 size(I,1)-1],'visible','off')
text('units','pixels','position',[300 50],'fontsize',48,'string','テキスト挿入')
tim = getframe(gca);
close(hf)
%3.画像のピクセルをテキストのピクセルと入れ替え/表示
tim2 = tim.cdata; % キャプチャした画像データを抽出
tmask = tim2==0; % テキストのピクセル位置を取得
I(tmask) = uint8(255); % ピクセルの置き換え(白色)
figure,image(I),axis off % 表示
【処理前】
【処理後】

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 イメージ에 대해 자세히 알아보기

태그

아직 태그를 입력하지 않았습니다.

제품


릴리스

R2012b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!