matlab實現圖像中插入字符

有時候爲了更方便直觀顯示圖像處理結果和部分提示信息,需要將字符信息顯示或保存到圖像中,這裏通過matlab的系統函數 vision.TextInserter實現這個功能,在lena.jpg圖像中顯示藍色字符“ceshi”,並保存結果。如下圖:

   

          (a)原始圖                      (b) 在圖像中寫入字符

matlab實現代碼如下:

close all;
clear all;
clc;

imgDispFinal=imread('lena.jpg');
dispInfo=sprintf('%s','ceshi');
textLocation=[100,100];
textColor=[0,0,255]; %red, green, blue
TextInserter=vision.TextInserter(dispInfo,'Location',textLocation,'Color',textColor,'FontSize',72);

[I_h,I_w,cmap] = size(imgDispFinal);
if(cmap==1)
    imgDispFinal0= uint8(zeros(I_h,I_w,3)) ;
    imgDispFinal0(:,:,1) = imgDispFinal;
    imgDispFinal0(:,:,2) = imgDispFinal;
    imgDispFinal0(:,:,3) = imgDispFinal;
else
    imgDispFinal0=   imgDispFinal;
end
imgDispFinal2=step(TextInserter,imgDispFinal0);  %將字符寫入圖像

%display
figure('name','imgDispFinal');imshow(imgDispFinal);%original image
figure('name','imgDispFinal2');imshow(imgDispFinal2);%text display on the original image
imwrite(imgDispFinal2,'lenaText.png');

注:通過matlab help功能可查閱函數vision.TextInserter的更多有關說明。該實例的測試軟件爲Matlab 2014 bit 64 ,更低版本的matlab可能沒有vision.TextInserter這個系統函數,已測試發現matlab2010中無此函數。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章