matlab中给图像加几个矩形框_在图像中画矩形框(matlab)
参考代码:https://github.com/cuijiaxun/FaceRecognitionByMatlab 中的LabelDetectWindow.m
在目标检测的时候,一般都需要用矩形框圈出目标在图片中的大致范围,这时候可以考虑使用下面总结的两种方式:
1 利用在给定图片中矩形边框所处的位置的像素值赋值,从而显示出矩形框
% 2017-12-18 席**
% 给原始图像指定位置加上矩形边框标记
% 原理:给图片中矩形边框所在的位置像素值赋值,从而显示出矩形框
% 输入:
% image 需要进行标记的图像
% windowLocation 矩形框位置,其格式为[x,y],即[x坐标,y坐标](该位置为矩形最靠下最靠右的顶点)
% windowSize 矩形框尺寸,其格式为[height,width],即[高度,宽度]
%
% 输出:
% drawRectangleImage 在原始图像上加上矩形框的标记图像(仍为图像)
%
function [drawRectangleImage] = drawRectangleFrame01(image,windowLocation,windowSize)
[row,col] = size(image); % 输入图像尺寸
x = windowLocation(1);%矩形框位置坐标,其格式为[x,y]
y = windowLocation(2);
height = windowSize(1);%矩形框尺寸,其格式为[height,width],即[高度,宽度]
width = windowSize(2);
if((x<=row && y<=col)&&(height<=row && width<=col))
disp('矩形框合法!');
LabelLineColor = 255; % 标记线颜色
drawRectangleImage = image;
topMost = x-height; % 矩形框上边缘
botMost = x; % 矩形框下边缘
lefMost = y-width; % 矩形框左边缘
rigMost = y; % 矩形框右边缘
drawRectangleImage(topMost:botMost,lefMost,:) = LabelLineColor; % 左边框
drawRectangleImage(topMost:botMost,rigMost,:) = LabelLineColor; % 右边框
drawRectangleImage(topMost,lefMost:rigMost,:) = LabelLineColor; % 上边框
drawRectangleImage(botMost,lefMost:rigMost,:) = LabelLineColor; % 下边框
else
disp('矩形框不合法!');
end
2 利用hold on / hold off和rectangle函数在figure中绘出矩形框
这种方法得到只是一个figure,要想利用该figure还需自己保存为图像,不像1中可直接为工作空间中的图像变量
% 2017-12-18 席**
% 给原始图像指定位置加上矩形边框标记
% 原理:利用hold on / hold off和rectangle函数在figure中绘出矩形框
% 输入:
% image 需要进行标记的图像
% windowLocation 矩形框位置,其格式为[x,y],即[x坐标,y坐标](该位置为矩形最靠下最靠右的顶点)
% windowSize 矩形框尺寸,其格式为[height,width],即[高度,宽度]
%
% 输出:
% drawRectangleImage 并不是一个图片,而是一个???
%
function [drawRectangleImage] = drawRectangleFrame(image,windowLocation,windowSize)
[row,col] = size(image); % 输入图像尺寸
x = windowLocation(1);%矩形框位置坐标,其格式为[x,y]
y = windowLocation(2);
height = windowSize(1);%矩形框尺寸,其格式为[height,width],即[高度,宽度]
width = windowSize(2);
if((x<=row && y<=col)&&(height<=row && width<=col))
disp('矩形框合法!');
figure;imshow(image);
hold on
drawRectangleImage = rectangle('Position',[y-width,x-height,width,height],'LineWidth',4,'EdgeColor','r');
hold off
else
disp('矩形框不合法!');
end
测试调用的函数为
clear;close all;clc
I = imread('F:\matlab\drawRectangle\image_0101.jpg');
[row,col,n] = size(I); % 输入图像尺寸
II = rgb2gray(I);
III = drawRectangleFrame(II,[360,480],[200,100]);
%figure();
%imshow(III);
运行效果
1:
2:(手动保存的figure)
matlab中给图像加几个矩形框_在图像中画矩形框(matlab)相关推荐
- java处理图像减小大小不改变像素_在Java中调整图像大小以降低内存消耗
ImageMagick的"转换"命令行工具使您可以在执行操作时指定内存使用限制. 我想找到一个提供相同选项的Java图像大小调整库. 我的应用程序有时会获得非常大的JPEG,因此需 ...
- python显示文字框_在Python 中实现图片加框和加字的方法
第一步:安装opencv-python rpm -ivh opencn-python-2.4.5-3.el7.ppc64le.rpm 第二步:引用cv2 import cv2 第三步:读入图片,必须是 ...
- java中怎么让字体可以显示下划线呢_数字文字中的下划线(Java 7特性)
Java 7的一个特性是数字文字中的下划线.可以在任何数字文字的数字之间放置下划线,如:int,byte,short,float,long,double.在数字文字中使用下划线将它们分成组以获得更好的 ...
- matlab中给图像加几个矩形框_没想到!PPT中的这个效果,用好了,简直就是渣图美化器...
相信大家一定看到过,透过磨砂玻璃呈现在眼前的景色,是不是有种朦胧美? 其实,在PPT中你也可以复刻出这样的效果.例如,这样的PPT页面: 把背景虚化掉,更加突出主题. 你想知道PPT中的磨砂效果,都是 ...
- python函数图像加标签_tkinter(py3)更改图像标签,函数内部,实时
我正在学习使用tkinter,我试着在咖啡机上有4个按钮,每个按钮都会创建一个新窗口,按顺序显示图像,就像幻灯片一样.我所做的不起作用,因为它只显示幻灯片中的最后一个图像,而忽略了其余部分.在Pyth ...
- picturectrl控件中加载图片并显示_在 CRA 中使用 webp 图片提升加载性能
webp 是 google 提倡的一种新的 image 格式,意在为 web 提供体积更小的图片格式.通常情况下,无损压缩可以减小 25%-35% 的体积(有例外情况,反而会增大体积,但是是因为转换图 ...
- 在模糊查询中怎样事先加载页面_8种信息类型,中后台产品功能自查清单
产品经理在梳理产品需求文档时需要把每一个功能的逻辑关系.交互方式都整理全面,为了避免疏漏,与开发评审前,建议每位产品都 Check 几遍文档.本文整理了一份中后台产品功能自查清单,供大家参考,如有不全 ...
- python中参数前面加星号是什么意思_详解Python函数中参数带星号是什么意思
函数的参数使用除了常规的位置参数和关键字参数外,还支持可变个数的函数参数,这种支持可变个数的参数方法称为参数收集,对应的参数称为收集参数. 一.参数收集的定义 Python的函数支持可变不定数量的参数 ...
- wpf 带图像的文本框_注意WPF中带有图像PNG的DPI-图像比例奇怪或模糊
wpf 带图像的文本框 Is that enough TLAs (Three Letter Acronyms) in the title there? I continue to mentally d ...
最新文章
- Struts2 interceptor使用经验小结
- T-SQL 根据年月日创建DateTime
- 循环神经网络RNN的基本组件(五)
- 由单例模式造成的内存泄漏
- pythonwhile循环love_python基础之while循环及编码
- skyline point解析
- 数据科学入门与实战:Matplotlib绘图hist
- ubuntu14在kDE界面下的关于eclipse提示框黑色背景的修改!
- 雅虎相册批量下载 Beta2 版本 --纪念 5.12 汶川大地震
- 响铃:金蝶的SaaS第一能保持多久?
- vivado使用方法(初级)
- python中num函数是什么意思_如何理解python3函数中num的用法?
- opencv读取透明图片
- UDS的19 04读取快照信息解析
- 机器学习(一)——基础概念
- 【20230204】Ubuntu系统备份与恢复
- python 代码转程序_如何用pyinstaller把自己编写的python源代码转换成可执行程序?...
- 逻辑代数基本公式及定律
- 我的世界java版指令保留物品栏_我的世界或将在模式切换中保存物品栏
- Gartner:2021年区块链三大顶级趋势