版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——梯度方向直方图HOG1
gradscalx=max(max(gradscalx(:,:,1),gradscalx(:,:,2)),gradscalx(:,:,3));gradscaly=max(max(gradscaly(:,:,1),gradscaly(:,:,2)),gradscaly(:,:,3));end
gradscal=sqrt(double(gradscalx.*gradscalx+gradscaly.*gradscaly));
%计算梯度方向矩阵。加上较小数值避免划分为零。gradscalxplus=gradscalx+ones(size(gradscalx))*0.0001;gradorient=zeros(M,N);
%无符号的状况:方向范围是0到pi。ifstrcmp(issigned,'unsigned')==1gradorient=...
atan(gradscaly./gradscalxplus)+pi/2;or=1;else
%有符号的状况:方向范围是0到2*pi。ifstrcmp(issigned,'signed')==1
idx=find(gradscalx>=0
gradorient(idx)=atan(gradscaly(idx)./gradscalxplus(idx));idx=find(gradscalx=0
gradorient(idx)=atan(gradscaly(idx)./gradscalxplus(idx))+2*pi;or=2;else
error('IncorrectISSIGNEDparameter.');endend
%计算块滑步。
xbstride=cellpw*nblockw*(1-overlap);ybstride=cellph*nblockh*(1-overlap);xbstridend=N-cellpw*nblockw+1;ybstridend=M-cellph*nblockh+1;
%计算在窗口检测到所有块的数量,这是ntotalbh*ntotalbw.ntotalbh=((M-cellph*nblockh)/ybstride)+1;ntotalbw=((N-cellpw*nblockw)/xbstride)+1;
。程序的完整性和正确性还有待进一步研究。
方向梯度直方图(HOG,HistogramofGradient)基础知识
梯度(gradient):/jia20003/article/details/7664777(含代码)在向量微积分中,标量场的梯度是一个向量场,标量场中某一点上的梯度指向标量场增长最快的方向,梯度的长度是最大的变化率。
图像处理之图像梯度效果
基本思想:
利用X方向与Y方向分别实现一阶微分,求取振幅,实现图像梯度效果。关于如何计算图像
一阶微分参见这里:/jia20003/article/details/7562092
使用的两种微分算子分别为Prewitt与Sobel,其中Soble在X,Y两个方向算子分别为:
Prewitt在X,Y方向上梯度算子分别为:
二:程序思路及实现
梯度滤镜提供了两个参数:
–方向,用来要决定图像完成X方向梯度计算,Y方向梯度计算,或者是振幅计算–算子类型,用来决定是使用sobel算子或者是prewitt算子。计算振幅的公式可以参见以前《图像处理之一阶微分应用》的文章
一阶微分:/jia20003/article/details/7562092(含代码)对于离散的图像来说,一阶微分的数学表达相当于两个相邻像素的差值,根据选择的梯度算子不同,效果可能有所不同,但是基本原理不会变化。最常见的算子为Roberts算子,其它常见还有Sobel,Prewitt等算子。
图像处理之一阶微分应用一:数学背景
首先看一下一维的微分公式Δf=f(x+1)–f(x),对于一幅二维的数字图像f(x,y)而言,需要完
成XY两个方向上的微分,所以有如下的公式:
分别对X,Y两个方向上求出它们的偏微分,最终得到梯度DeltaF.
对于离散的图像来说,一阶微分的数学表达相当于两个相邻像素的差值,根据选择的梯度算
子不同,效果可能有所不同,但是基本原理不会变化。最常见的算子为Roberts算子,其它
常见还有Sobel,Prewitt等算子。以Roberts算子为例的X,Y的梯度计算演示如下图:
二:图像微分应用
图像微分(梯度计算)是图像边缘提取的重要的中间步骤,根据X,Y方向的梯度向量值,可以
得到如下两个重要参数振幅magnitude,角度theta,计算公式如下:
Theta=tan-1(yGradient/xGradient)magnitude表示边缘强度信息theta预言边缘的方向走势。
假使对一幅数字图像,求出magnitude之后与原来每个像素点对应值相加,则图像边缘将被
大大加强,轮廓更加明显,是一个很典型的sharpfilter的效果。Robert算子:http://baike.//view/676369.htm
Roberts边缘检测算子是一种利用局部差分算子寻觅边缘的算子,Robert算子图像处理后结果边缘不是很平滑。经分析,由于Robert算子寻常会在图像边缘附近的区域内产生较宽的响应,故采用上述算子检测的边缘图像常需做细化处理,边缘定位的精度不是很高。
Roberts边缘检测算子是一种利用局部差分算子寻觅边缘的算子,Robert算子图像处理后结果边缘不是很平滑。经分析,由于Robert算子寻常会在图像边缘附近的区域内产生较宽的响应,故采用上述算子检测的边缘图像常需做细化处理,边缘定位的精度不是很高。.NET代码如下:
privatevoidmenuItem23_Click(objectsender,System.EventArgse){
if(this.pictureBox1.Image!=null){
this.pictureBox2.Visible=true;
intheight=this.pictureBox1.Image.Height;intwidth=this.pictureBox1.Image.Width;Bitmaptemp=newBitmap(width,height);
Bitmapprocess=(Bitmap)this.pictureBox1.Image;inti,j,p0,p1,p2,p3;
Color[]pixel=newColor[4];intresult;
for(j=height-2;j>0;j--){
for(i=0;i255)result=255;if(resultheight-1;++i)13{
14for(intj=1;jwidth-1;++j)15{
16a00=cvGet2D(gray,i-1,j-1).val[0];17a01=cvGet2D(gray,i-1,j).val[0];18a02=cvGet2D(gray,i-1,j+1).val[0];19a10=cvGet2D(gray,i,j-1).val[0];20a11=cvGet2D(gray,i,j).val[0];21a12=cvGet2D(gray,i,j+1).val[0];22a20=cvGet2D(gray,i+1,j-1).val[0];23a21=cvGet2D(gray,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 成本管控责任制度
- 手术器械准备责任制度
- 投诉举报岗位责任制度
- 护理员岗位责任制度
- 招商局首问责任制度
- 探放水岗位责任制度
- 搅拌站安全责任制度范本
- 收费停车场安全责任制度
- 政府办首问责任制制度
- 教学管理岗位责任制度
- GB/T 14598.301-2010微机型发电机变压器故障录波装置技术要求
- GB 30526-2019烧结墙体材料和泡沫玻璃单位产品能源消耗限额
- GA 139-2009灭火器箱
- 2023年江苏专转本计算机真题及答案
- 部编版小学道德与法治五年级下册第1课《读懂彼此的心》课件
- 医疗机构消防安全管理九项规定(2020版)-精品原创课件
- 听力检查及结果分析
- DBJ 53-T-46-2012 云南省城镇道路及夜景照明工程施工验收规程
- 工业厂房水电安装工程施工方案
- 商务英语翻译实务完整版教学ppt课件全套教程
- 食品质量与安全管理教材PPT课件(105页)
评论
0/150
提交评论