function [state,result]=draw_rect(data,pointAll,windSize,showOrNot)

% 函数调用:[state,result]=draw_rect(data,pointAll,windSize,showOrNot)

% 函数功能:在图像画个长方形框

% 函数输入:data为原始的大图,可为灰度图,可为彩色图

% pointAll 框的左上角在大图中的坐标(每行代表一个坐标),

% 注意:在图中的坐标系为第一列为y,第二列为x(很奇怪的)

% windSize 框的大小 windSize=[,] 分别表示长宽

% showOrNot 是否要显示,默认为显示出来

% 函数输出:state -- 表示程序结果状态

% result - 结果图像数据

% 函数历史: v0. @-- created by Aborn

if nargin <

showOrNot = ;

end

rgb = [ ]; % 边框颜色

lineSize = ; % 边框大小,取1,,

windSize(,)=windSize(,);

windSize(,) = windSize(,);

if windSize(,) > size(data,) ||...

windSize(,) > size(data,)

state = -; % 说明窗口太大,图像太小,没必要获取

disp('the window size is larger then image...');

return;

end

result = data;

if size(data,) ==

for k=:

for i=:size(pointAll,) %画边框顺序为:上右下左的原则

result(pointAll(i,),pointAll(i,):pointAll(i,)+windSize(i,),k) = rgb(,k);

result(pointAll(i,):pointAll(i,)+windSize(i,),pointAll(i,)+windSize(i,),k) = rgb(,k);

result(pointAll(i,)+windSize(i,),pointAll(i,):pointAll(i,)+windSize(i,),k) = rgb(,k);

result(pointAll(i,):pointAll(i,)+windSize(i,),pointAll(i,),k) = rgb(,k);

if lineSize == || lineSize ==

result(pointAll(i,)+,pointAll(i,):pointAll(i,)+windSize(i,),k) = rgb(,k);

result(pointAll(i,):pointAll(i,)+windSize(i,),pointAll(i,)+windSize(i,)-,k) = rgb(,k);

result(pointAll(i,)+windSize(i,)-,pointAll(i,):pointAll(i,)+windSize(i,),k) = rgb(,k);

result(pointAll(i,):pointAll(i,)+windSize(i,),pointAll(i,)-,k) = rgb(,k);

if lineSize ==

result(pointAll(i,)-,pointAll(i,):pointAll(i,)+windSize(i,),k) = rgb(,k);

result(pointAll(i,):pointAll(i,)+windSize(i,),pointAll(i,)+windSize(i,)+,k) = rgb(,k);

result(pointAll(i,)+windSize(i,)+,pointAll(i,):pointAll(i,)+windSize(i,),k) = rgb(,k);

result(pointAll(i,):pointAll(i,)+windSize(i,),pointAll(i,)+,k) = rgb(,k);

end

end

end

end

end

state = ;

if showOrNot ==

figure;

imshow(result);

end

在main函数中调用如下:

% main.m

clc;

clear;

close all;

data = imread('man_1.jpg');

pointAll = [,];

windSize = [,];

[state,results]=draw_rect(data,pointAll,windSize);

return;

原图像为:

结果图像为:

特别注意:图像中显示的坐标系和我们平时用的不一样!!!

from: http://blog.csdn.net/loveaborn/article/details/8545809

MATLAB&&num;183&semi;提取图像中多个目标

基于matlab工具箱提取图像中的多目标特征(代码如下): 代码前面部分为提取图像的边界信息,调用了后面的遍历函数Pixel_Search,函数实现方法见后~ %%ROI Testing close ...

利用OpenCV检测图像中的长方形画布或纸张并提取图像内容

基于知乎上的一个答案.问题如下: 也就是在一张照片里,已知有个长方形的物体,但是经过了透视投影,已经不再是规则的长方形,那么如何提取这个图形里的内容呢?这是个很常见的场景,比如在博物馆里看到一幅很喜欢 ...

MATLAB GUI程序设计中使文本框接收多行输入的方法

对于文本框来说 Max属性于Min属性数值之差小于等于1时,仅接收单行输入 大于1时,接受多行输入 对于多行情况,set/get到的String应为cell 本系列文章允许转载,转载请保留全文! [说 ...

matlab 对图像操作的函数概览

转自博客:http://blog.163.com/fei_lai_feng/blog/static/9289962200991713415422/ 一. 读写图像文件 1. imread imread ...

&lbrack;图像&rsqb;用Matlab在图像上画矩形框

原创文章,欢迎转载.转载请注明:转载自 祥的博客 原文链接:http://blog.csdn.net/humanking7/article/details/46819527 在毕业设计的时候写论文画图 ...

Matlab实现Hough变换检測图像中的直线

Hough变换的原理: 将图像从图像空间变换至參数空间.变换公式例如以下: 变换以后,图像空间与參数空间存在下面关系: 图像空间中的一点在參数空间是一条曲线,而图像空间共线的各点相应于參数空间交于一点 ...

【matlab】图像直方图

使用imhist函数(要先用rgb2gray转化为灰度图像) 利用matlab计算图像直方图函数为imhist() 具体用法: imhist( i );直接显示图像i的灰度直方图: imhist(i, ...

利用Adorner制作用于图像裁切的选择框

原文:利用Adorner制作用于图像裁切的选择框 前天,我写了一篇"使用Adorner显示WPF控件的边界点"的文章.这次,使用从Adorner继承来写一个用于图像裁切的选择框. ...

随机推荐

不起眼却有大作用的 &period;NET功能集&lpar;转发&rpar;

http://www.cnblogs.com/powertoolsteam/p/top15features.html 目录 1. ObsoleteAttribute2. 设置默认值属性: Defaul ...

SQL SERVER 导出到Oracle 问题与技巧

工具: 使用SQL SERVER自带的导入, 导出工具   技巧: 一. 使用Oracle Provider for OLE DB(强制推荐) 1. 速度快 2. 要安装Oracle驱动(Oracle ...

自己用反射写的一个request&period;getParameter工具类

适用范围:当我们在jsp页面需要接收很多值的时候,如果用request.getParameter(属性名)一个一个写的话那就太麻烦了,于是我想是 否能用反射写个工具类来简化这样的代码,经过1个小时的代 ...

Spring AOP 实现原理

什么是AOP AOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善.OOP引入 ...

Poetize6&colon; IncDec Sequence

3043: IncDec Sequence Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 233  Solved: 132[Submit][Statu ...

UVA-11214 IDA&ast;

利用迭代加深搜索,枚举需要的皇后数量,进行搜索. 对于10 * 10 的棋盘,最多需要5个皇后就能攻击整个棋盘,当0~4个皇后都不能搜索成功,那么5就不用搜索,直接打印. AC代码: #include ...

SpringBoot&lpar;三&rpar;&lowbar;controller的使用

针对controller 中 如何使用注解进行解析 @RestController 返回数据类型为 Json 字符串,特别适合我们给其他系统提供接口时使用. @RequestMapping (1) 不 ...

二进制安装mysql5&period;7

1.创建用户和组 groupadd mysql useradd -r -g mysql mysql 2.上传二进制包至/usr/local下解压并改名为mysql tar zxvf mysql-5.7 ...

Java进阶 -- 文章汇总

文章汇总 Java集合源码 -- Collection框架概述 Java集合源码 -- Map映射和Set集合 Java集合源码 -- List列表 String和StringBuffer 内部类 j ...

HTTP协议详解之基本认证篇

•什么是HTTP基本认证: 桌面应用程序也通过HTTP协议跟web服务器交互,桌面应用程序一般不会使用cookie,而是把‘用户名+:+密码’用base64编码之后的string放在request中的 ...

设置matlab图像线框,matlab在图像中画长方形(框)相关推荐

  1. matlab画简单长方形,matlab在图像中画长方形(框)

    function [state,result]=draw_rect(data,pointAll,windSize,showOrNot) % 函数调用:[state,result]=draw_rect( ...

  2. MATLAB梯度和拉普拉斯算子在图像边缘检测中的应用

    MATLAB梯度和拉普拉斯算子在图像边缘检测中的应用 数学方法 边缘检测最通用的方法是检测灰度值的不连续性,这种不连续性用一阶和二阶导数来检测. (1)一阶导数:一阶导数即为梯度,对于平面上的图像来说 ...

  3. matlab去除图片水印_怎么用matlab从含有水印的图像中提取出水印

    展开全部 3 视频水印的嵌入和检测方案 3.1水印的预处理 采用二值图像作为待嵌入的水印数据,本文e69da5e887aa323131333532363134313032313635333133333 ...

  4. 扫描电镜图片的Matlab分析,基于Matlab的图像增强与复原技术在SEM图像中的应

    0引  言 根据国内外的相关文献,研究和发展图像处理工具,改善图像质量是当今研究的热点.图像增强与复原是一种基本的图像处理技术.其按照特定的需要突出一幅图像中的某些信息或强化某些感兴趣的特征,将原来不 ...

  5. hough变换检测直线 matlab,Matlab实现Hough变换检测图像中的直线

    Hough变换的原理: 将图像从图像空间变换至参数空间,变换公式如下: 变换以后,图像空间与参数空间存在以下关系: 图像空间中的一点在参数空间是一条曲线,而图像空间共线的各点对应于参数空间交于一点的各 ...

  6. matlab中提取裂缝图像,基于Matlab图像处理的水泥路面裂缝检测研究

    路面裂缝检测是计算公路状况指数的重要依据[1],传统的检测方法主要是靠人工检测,测量精度差.检测效率低.同时检测人员会有安全隐患[2-3].现在多采自动检测的方法对路面裂缝的损害进行检测,其中使用数字 ...

  7. matlab bmp hsi,matlab中RGB与HSI图像转化

    姓名:边颖超 学号:19021210974 编程实现RGB与HSI彩色空间的转换,将一幅彩色图像分解为H.S.I三个分量,并显示这三个分量所对应的灰度图像. (1)利用imread函数读入灰度图片hu ...

  8. matlab拉普拉斯图像锐化处理,MATLAB中的拉普拉斯图像滤波与锐化图像

    我有一些提示: >这只是一个小问题,但filter2执行相关.实际上,您需要执行卷积,在执行像素邻域和内核之间的加权和之前将内核旋转180度.但是因为内核是对称的,convolution and ...

  9. [Matlab]Simulink绘制3维图像

    [Matlab]Simulink绘制3维图像 绘制1维和2维图像时,在Simulink中一般使用Scope,而为了获得更多的显示功能,我们也可以通过定义S-Function来实现/封装任何所希望的功能 ...

最新文章

  1. research development course at ifm
  2. elasticsearch 索引_Elasticsearch系列---索引管理
  3. Scribefire发CSDN博客
  4. 微软将在新西兰建设其第一个数据中心区域
  5. CSS媒体查询,CSS根据不同的分辨率显示不同的样式
  6. android: 记录及回复lisView的位置
  7. 自动驾驶模拟器Carla之python编程-(2)控制汽车
  8. java jni librtmp_编译Android平台libRTMP库
  9. falsk 项目中日志设置
  10. freebsd下安装php-intl扩展
  11. Raki的读paper小记:How to Fine-Tune BERT for Text Classification?
  12. Python数据处理041:数据分析之时间序列
  13. 浅谈计算机网络安全问题和对策
  14. 『中文、英文词频统计分析软件』免费工具分享
  15. UVA - 11137 Ingenuous Cubrency
  16. 反射、装箱拆箱、ArrayList与Array的区别 - 天生舞男 - 博客园
  17. LiveGBS接入LiveQing流媒体服务实现云端录像和大屏展示
  18. android+下落+动画,完美起航-Android面试题之动画+事件处理篇
  19. 手机摄像头当电脑摄像头的软件
  20. 【C语言】-关于strlen的介绍以及三种模拟实现的方法

热门文章

  1. Cesium源码解读系列(一):GeoJsonDataSource如何处理geojson格式的数据
  2. HDU 4069 Squiggly Sudoku DLX
  3. 小米盒子4S Pro好不好,对比当贝盒子B1有什么缺点
  4. idea合并分支只合并某次提交的代码
  5. 抓包工具wireshark和Fiddler的使用
  6. MOSFET驱动电路
  7. 数字电位器X9312
  8. 【视频】海康摄像头、NVR网络协议简介
  9. [转帖]nginx1.17.2版本源码安装
  10. PHP+Redis令牌桶算法 接口限流