Adding a Title to imwrite Command
13 ビュー (過去 30 日間)
古いコメントを表示
I am trying to do imwrite's adding titles to the output images. I tried the code below but it doesn't work. Probably I am using "plot" constucts that don't apply here. The forum was a bit vague on this. Is there any way to add a title to imwrite?
Thanks
fritz
imwrite (p, gray,outfl)
titl = strcat(''TITLE HERE');
title(titl)
1 件のコメント
Rik
2020 年 8 月 13 日
What do mean exactly with title? Do you want to add a text to the image itself? Do you want to set a char array as one of the EXIF fields?
採用された回答
Johannes Hougaard
2020 年 8 月 13 日
You have to add the title to your figure before using imwrite.
If it is indeed images (.jpg, .tiff etc) that constitutes your p and gray read from an image using imread I believe this will do the trick
[p,gray] = imread("yourfilenamehere.tif");
newfig = figure;
imshow(p,gray);
title("TITLE HERE");
newimg = getframe(newfig);
imwrite(newimg.cdata,gray,outfl);
If your data p are not an RGB image, but rather a graphic depiction of numeric data in matlab it'd probably be easier to use the print option to save your graph as an image file.
x = linspace(-10,10,111);
p = sin(x);
newfig = figure;
plot(x,p);
title("This is sin(x) in the range -10 to 10");
print(newfig,outfl,'-djpeg'); % If save as .jpg, change to -dpng for .png or -dtiff for .tif
2 件のコメント
Rik
2020 年 8 月 14 日
You might also be interested in alternative: convert text to an image and add that on top of your original image. You can use a function like text2im to do that.
If the answer by Johannes solved your issue, don't forget to mark his answer as accepted, if not, feel free to comment with your remaining issues.
その他の回答 (1 件)
Ferheen Ayaz
2020 年 8 月 13 日
I think you may want to do this
F=figure(1)
imshow('1.png')
title('Hello')
frame=getframe(F)
im=frame2im(frame)
imwrite(im,'2.png')
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Title についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!