官网链接:https://ww2.mathworks.cn/help/vision/ref/insertobjectannotation.html
insertObjectAnnotation:注释真彩或灰度图像或视频流
语法结构和例子说明:
1、RGB = insertObjectAnnotation(I,shape,position,label) %在指定位置上返回用形状和标签注释的真彩色图像。
-
%%例子:
-
I = imread(
'board.tif'); %读图片
-
label_str = cell(
3,
1); %创建浮点数的标签。浮点数与置信值标签有关。
-
conf_val = [
85.212
98.76
78.342];
-
for ii=
1:
3
-
label_str{ii} = [
'Confidence: ' num2str(conf_val(ii),
'%0.2f')
'%'];
-
end
-
position = [
23
373
60
66;
35
185
77
81;
77
107
59
26]; %设置矩形框位置信息[x y width height].
-
RGB = insertObjectAnnotation(I,
'rectangle',position,label_str,...
-
'TextBoxOpacity',
0.9,
'FontSize',
18); %插入标签。
-
figure
-
imshow
(RGB) %显示标记图片
-
title
('Annotated chips');
结果显示:
2、RGB = insertObjectAnnotation(I,shape,position,label,Name,Value) %使用由一个或多个名称、值对指定的附加选项
-
%例子:
-
-
I = imread(
'coins.png'); %读图片
-
position = [
96
146
31;
236
173
26];%设置圆位置。前两个值表示中心位于(x,y),第三个值表示半径。
-
label = [
5
10]; %设置标签显示整数
5和
10(美国美分)。
-
RGB = insertObjectAnnotation(I,
'circle',position,label,
'LineWidth',
3,
'Color',{
'cyan',
'yellow'},
'TextColor',
'black'); %插入的批注。
-
figure
-
imshow
(RGB) %显示图片
-
title
('Annotated coins');
结果显示:
3、insertObjectAnnotation(I,'rectangle',position,label) %在位置矩阵所指示的位置插入矩形和标签。
4、insertObjectAnnotation(I,'circle',position,label)
3、4用法同上
参数说明:
1) I 真彩色图像或灰度图像或视频流(M×N×3的真彩色图像,或M×N×2的灰度图像)
数据类型:
double
| single
| uint8
| uint16
| int16
2)shape 矩形或圆
3)position 形状和位置的标注信息
4)label 与形状相关联的字符向量标签。
5)Name-Value 指定可选的逗号分隔的名称、值参数对。名称必须出现在引号内。可以按NAME1、Value1、…、NAMEN、ValueN 的任意顺序指定多个名称和值对参数。
6)Font 文本字体,默认为'LucidaSansRegular'
7)FontSize 字体尺寸,默认为12
8)LineWidth 边框线宽,默认为1
9)Color 边框颜色,默认为'yellow'
10)'TextColor' 文本颜色,默认为'black'
11)'TextBoxOpacity'
背景不透明文本标签框,取值范围[0 1],默认0.6
输出为带标签的RGB真彩或灰度图像。
testLabels 是一个categorical 数组,如下图所示:
现将以上testlabels 转为cell 数组,并且将每个label 转为str 字符串形式:
testLabels_cellstr=cellstr(testLabels) ;