学渣一枚,毕设做hog+svm目标检测,关于hog特征提取的代码想请假各路大神
本人matlab编程小白 ,做的毕设是hog+svm目标检测。现在还在hog特征提取阶段。代码不会写啊啊啊 在网上搜到一个hog人脸识别的代码,按说也可以用在我的飞机识别课题上。。现在有一个问题就是这个代码读入的图片大小是256*256像素。我的飞机样本是40*40像素大小。跪求大神给点拨下这段代码里都有哪些需要改动的地方。要是怎么改也可以讲一下那真是感激涕零了。。。

    附网上搜到的matlab代码:

    clear all; close all; clc;

addpath('E:\road\');
img=double(imread('zhaopian.jpg'));
imshow(img,[]);
[m n]=size(img);

img=sqrt(img); %伽马校正

%下面是求边缘
fy=[-1 0 1]; %定义竖直模板
fx=fy'; %定义水平模板
Iy=imfilter(img,fy,'replicate'); %竖直边缘
Ix=imfilter(img,fx,'replicate'); %水平边缘
Ied=sqrt(Ix.^2+Iy.^2); %边缘强度
Iphase=Iy./Ix; %边缘斜率,有些为inf,-inf,nan,其中nan需要再处理一下

%下面是求cell
step=16; %step*step个像素作为一个单元
orient=9; %方向直方图的方向个数
jiao=360/orient; %每个方向包含的角度数
Cell=cell(1,1); %所有的角度直方图,cell是可以动态增加的,所以先设了一个
ii=1;

jj=1;
for i=1:step:m %如果处理的m/step不是整数,最好是i=1:step:m-step
ii=1;
for j=1:step:n %注释同上
tmpx=Ix(i:i+step-1,j:j+step-1);
tmped=Ied(i:i+step-1,j:j+step-1);
tmped=tmped/sum(sum(tmped)); %局部边缘强度归一化
tmpphase=Iphase(i:i+step-1,j:j+step-1);
Hist=zeros(1,orient); %当前step*step像素块统计角度直方图,就是cell
for p=1:step
for q=1:step
if isnan(tmpphase(p,q))==1 %0/0会得到nan,如果像素是nan,重设为0
tmpphase(p,q)=0;
end
ang=atan(tmpphase(p,q)); %atan求的是[-90 90]度之间
ang=mod(ang*180/pi,360); %全部变正,-90变270
if tmpx(p,q) if ang ang=ang+180; %移到第三象限
end
if ang>270 %如果是第四象限
ang=ang-180; %移到第二象限
end
end
ang=ang+0.0000001; %防止ang为0
Hist(ceil(ang/jiao))=Hist(ceil(ang/jiao))+tmped(p,q); %ceil向上取整,使用边缘强度加权
end
end
Hist=Hist/sum(Hist); %方向直方图归一化
Cell{ii,jj}=Hist; %放入Cell中
ii=ii+1; %针对Cell的y坐标循环变量
end
jj=jj+1; %针对Cell的x坐标循环变量
end

%下面是求feature,2*2个cell合成一个block,没有显式的求block
[m n]=size(Cell);
feature=cell(1,(m-1)*(n-1));
for i=1:m-1
for j=1:n-1

f=[];
f=[f Cell{i,j}(:)' Cell{i,j+1}(:)' Cell{i+1,j}(:)' Cell{i+1,j+1}(:)'];
feature{(i-1)*(n-1)+j}=f;
end
end

%到此结束,feature即为所求
%下面是为了显示而写的
l=length(feature);
f=[];
for i=1:l
f=[f;feature{i}(:)'];

end
figure
mesh(f)

再次感谢 !!!

0

1个回答

一脸懵逼 ,跪求各路大神指教啊

0
xiaohuangren1213
xiaohuangren1213 我也是这个课题啊,目前做到了提取出图片的所有hog特征,下一步是svm分类检测 有想交流的大神加微信呗 13772517972
2 个月之前 回复
qq1837016187
qq1837016187 有联系方式吗,跪求‘’
2 个月之前 回复
qq1837016187
qq1837016187 回复qq_41154473: 亲,毕设做完了吗,今年我的毕设是这个
2 个月之前 回复
qq_41154473
qq_41154473 亲,你的毕设是不是已经做完了。。我是今年要做目标检测的毕设,但是也不会代码。。能否劳烦亲发我一份,感激不尽!!!
10 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
OpenCV3特征提取与目标检测之HOG(三)——使用HOG加SVM训练自己的行人检测模型
一、概述与资源准备 二、代码原理 三、代码流程 四、具体代码 五、训练总结
基于HOG特征提取的svm行人头肩训练
基于HOG特征提取的svm行人头肩训练,提供训练集和测试集的图片,结果导出在txt文件中。
目标检测—HOG特征和OpenCV中的实现
转载请注明出处!!!http://blog.csdn.net/zhonghuan1992 目标检测—HOG特征和OpenCV中的实现 关于HOG特征可以看http://blog.csdn.net/zouxy09/article/details/7929348和http://www.cnblogs.com/tornadomeet/archive/2012/08/15/2640754.html,
HOG+SVM实现目标检测
环境:VS2013+OpenCV3.0看论文《Detection and Recognition of Traffic Planar Objects Using Colorized Laser Scan and Perspective Distortion Rectification》,Traffic Planar Objects Detection is implemented by the H...
车牌识别技术详解五--采用LBP+HOG SVM做目标分类,车牌检测,字符检测等
在样本数量比较少的情况下,可以采用HOG、SVM对样本进行初步的筛选出,正负样本,本文接着上一节二值化出来部分样本后,用pictureRelate做初步筛选出正负样本各500,准确训练。 1、pictureRelate使用    可以用来比较图片的相似程度,或找出类似的图片文件的图像处理工具。在同一个视窗里浏览不同文件夹和硬盘驱动器中的图片文件#支持查看,改名,删除,剪贴,拖动,切换至文件管理
HOG + SVM 做目标检测、车辆检测
所属知识点:Computer Vision:Feature Extraction;Classifier;Object Detection 微信公众号:“RoboticsCV”(微信号:ModernRobotics)即将运营 归纳和总结机器学习技术的库:ViolinLee/ML_notes 关键概念:梯度计算;直方图统计的方向单元划分(Orientation binning);描述器区块(Desc...
利用opencv的hog+svm实现细胞识别分类器
利用opencv的hog+svm实现细胞识别分类器   图像处理中的细胞识别和人脸识别可以这样来类比,图像中的一张张人脸就是一个个细胞。 模式识别的关键在于样本库的选取,识别率也只能在和样本库比较接近的环境下才能保证。主要工作是三部分一是特征提取,二是样本库的训练train,三是目标检测detect。 一.特征提取 特征提取采用的是HOG特征即HOG描述子,该特征在行人检测中效果非常好。
基于hog滑动窗口的目标识别
一、关于源码的一些简单说明          本文不是讲解hog理论的,所以需要对hog算法有一定了解,这些可以去参考hog提出者的博士论文,写得很详细。          按照正常流程,hog行人检测分为训练过程和检测过程,训练过程主要是训练得到svm的系数。在opencv源码中直接采用训练好了的svm系数,所以训练过程源码中没有涉及到多少。    首先还是对hog源码中一些固
dlib库学习--------目标检测(hog+svm)
一、训练超参数设置 dlib库中目标检测器训练的超参数由dlib.simple_object_detector_training_options类设定。下面我们来详细看看这个类 class simple_object_detector_training_options(): __init__() C #sv...
OpenCV3特征提取与目标检测之HOG(一)——HOG的概述与原理
一、HOG概述 二、HOG的原理 三、HOG的应用
OpenCV3特征提取与目标检测之HOG(二)——使用官方的行人分类器实现行人检测
1、概述 前面看到如何使用HOG去提取一张图像的中的局部目标的特征,那么得到了这些特征之后,用来做什么,opencv的官方给了一个使用HOG进行行人检测的demo。所加载的分类器是官方已经训练好的,而官方是使用HOG和SVM实现的。 2.代码流程 ...
hog+svm_行人检测matlab程序
hog+svm_行人检测matlab程序【仅供大家理解用】 程序压缩上传到了115网盘,下载链接:http://115.com/file/angcz83d 关于这个matlab程序,需要说明的是: 1、检测时的运行速度超级慢,以16个像素作为扫描时的步长,从1000*1000的大图里检测出最终结果,在2.5GHz的CPU下需要20多分钟时间。主要的时间消耗在两个地方,一个是计算H
【目标检测】基于SVM+HoG目标检测
最近正在做一个基于目标检测的项目,里面涉及到行人检测、跟踪,这里记录项目历程,以备后期研习。 【00】前言        巴拉巴拉--- 在做这个之前,看的论文也比较少,主要是百度、必应一些关键词 行人检测、目标检测等,比较多的算法介绍为HoG+SVM、还有一些机器学习相关的算法,如YOLO等,因为之前在HoG和SVM上花了时间较多,所以现阶段任务是在项目上把它们用起来,后期再考虑往深度学
OpenCv学习笔记15--传统目标检测(HOG+SVM)
此opencv系列博客只是为了记录本人对<<opencv3计算机视觉-pyhton语言实现>>的学习笔记,所有代码在我的github主页https://github.com/RenDong3/OpenCV_Notes. 欢迎star,不定时更新... 推荐前辈链接:https://www.cnblogs.com/zyly/p/9651261.html,解释的非常清晰 ...
利用hog+svm(梯度方向直方图和支持向量机)实现物体检测
最近利用hog+svm做了一个物体检测的小程序,可以先给大家看看实验的结果。从照片中,检测出以任意姿态摆放在任意位置的公仔。 插入图片 其实吧,网上关于hog和svm的教程和书籍也非常多。但是很少有那种让初学者或者不太了解相关内容的人一看就懂的文章或是博客。反正我是看了好多的博客,文章,又找了程序动手做,才能大概理解程序的具体运行过程。所以,我这次重点做一下查漏补缺的工作,我把别人文章里经常会
python通过HOG+SVM实现行人检测思路
一、思路 1、选取窗口宽高为 64*128 ,block大小为 16*16像素,block步长为8像素,cell为8*8像素,每个cell分9个bin,其他参数都默认         这样的话,一个block有4个cell,一个cell有9维,那一个block有 4*9=36维特征描述子,宽为64,x方向能有(64/8)-1 = 7 个block,高为128,y方向能有(128/8)-1=15...
opencv中应用HOG特征训练SVM多分类器的一般框架
opencv中应用HOG特征训练SVM多分类器的一般框架
目标检测--图像特征提取之一 --HOG特征
   HOG特征:方向梯度直方图(Histogram of oriented Gradient)     1.主要思想:在一副图像中,局部目标的表象和形状能够被梯度或边缘的方向密度分布很好          的描述。(本质:梯度的统计信息,而梯度主要存在于边缘的地方)。     2.优点:能够保持图像几何和光学形变的不变性(因为这两种形变只出现在更大的空间领域          上,而H...
基于vlfeat的HOG特征提取c++代码实现
HOG特征又叫方向特征直方图特征,是计算机视觉中作为目标检测十分常用且奏效的特征。其最著名的应用就是HOG+SVM这种思路解决了行人检测的任务,这项工作发表在了CVPR2005上,从此之后,HOG+SVM这种模式被复制在了很多其他工作中。有趣的是,在网络上我们可以轻而易举的搜索到无数篇关于HOG特征的理论介绍,却很少可以找到C++版本的代码。这无疑对计算机视觉研究刚刚入门的同学造成了很大困扰,纸上谈
人脸识别之人脸检测(八)--HOG特征原理及实现
原文: http://blog.csdn.net/icvpr/article/details/8454527   1)HOG特征的原始文献 "Histograms of Oriented Gradients for Human Detection"  "Finding People in Images and Videos" (PhD Thesis) (较为详细)   2) HOG特...
HOG+SVM行人检测opencv版本
正样本来源是INRIA数据集中的96*160大小的人体图片,使用时上下左右都去掉16个像素,截取中间的64*128大小的人体。负样本是从不包含人体的图片中随机裁取的,大小同样是64*128(从完全不包含人体的图片中随机剪裁出64*128大小的用于人体检测的负样本)。SVM使用的是OpenCV自带的CvSVM类。首先计算正负样本图像的HOG描述子,组成一个特征向量矩阵,对应的要有一个指定每个特征向量...
OpenCV3.2.0中使用HOG特征训练SVM分类器时重点注意事项
本篇文章主要是本人在编程的过程遇到的,困扰了我好久的几个小问题,在此与大家分享,希望大家不会被相同的问题所困扰。
图像识别--Java中使用openCV提取Hog特征通过SVM训练实现图像识别
图像识别大致可以分为这么几步: 1.对训练图片进行预处理 2.对预处理的图片进行Hog特征提取 3.使用SVM分类器对特征进行分类形成模型 4.根据模型对测试图片进行预测   以下都是通过openCV实现(若直接使用openCV提取Hog特征可直接跳过预处理阶段直接看Hog特征提取阶段): 预处理阶段: 1.图像的灰度化处理 Imgproc.cvtColor(imageMat,
基于HOG特征与SVM的车辆检测方法研究
随着生活水平的不断提高,汽车成为人们生活不可或缺的一部分。汽车总量的不断攀升造成城市交通拥堵不堪,伴随而来是频发的交通事故。在这个背景下智能交通越来越受到人们的关注,与此相关的目标检测技术的研究也得到很大的关注,车辆检测就是其中一个关键的组成部分。车辆检测由于其本身具有的挑战性,例如车辆形状的不同,车辆的视角的不同,车辆的遮挡,光照的差异变化,使车辆检测成为一个十分困难的任务。当前虽然对于车辆检测的研究已经取得一部分的成果,但是现存算法任然具有局限性,在各种环境下无法得到让人满意的效果,因此本文针对车辆检测进行了研究。 本文所做的工作主要包括两个部分:一研究国内外该课题方向的研究现状,对比不同算法的优缺点,研究不同算子提取车辆特征的效果;二是基于前面的研究实现基于HOG特征与SVM分类器的车辆检测系统,验证研究算法的可行性。 经过车辆检测系统的仿真验证,本文研究的方法可以有效的提取图像中的车辆,效果良好,速度在可接受的范围内。
LBP/HOG/SIFT/SURF特征SVM的trainAuto范例
在开源的车牌识别系统EasyPR中,用SVM(支持向量机)模型甄选出候选车牌中真正的车牌。目前EasyPR1.4的SVM模型输入的是LBP特征,本代码将EasyPR的svm_train.cpp独立出来,包含SIFT和SURF结合BOW作为SVM输入,以及LBP和HOG特征作为SVM的输入。
VS2013+OPENCV2.4.10 提取HOG特征使用SVM多分类手势识别
使用VS2013+OPENCV 2.4.10 离线训练及识别手势图片获得识别率
HOG_SVM的python实现
HOG提取特征,svm分类,python语言实现
提取HOG特征训练SVM分类器(一)HOG篇
利用hog特征训练svm分类器的总体思路: 1、提取正负样本hog特征 2、投入svm分类器训练,得到model 3、由model生成检测子 4、利用检测子检测负样本,得到hardexample 5、提取hardexample的hog特征并结合第一步中的特征一起投入训练,得到最终检测子。
【OpenCV3】HOG+SVM目标识别
SVM,即支持向量机,在结合相关特征描述子之后,在目标识别,如行人识别、汽车识别、人脸识别等领域中有着重要应用。opencv中提供了HOG特征描述子,这种特征提供支持SVM的接口。这不再进行原理性的介绍,直接介绍如何使用opencv进行SVM+HOG训练和检测。   1、svm+hog训练   #include <iostream> #include <fstrea...
HOG特征提取 matlab代码
有注释,有助于初学者理解。注意,64位的可执行文件在32位机上执行不了
基于SVM+HOG的人脸检测matlab程序
基于SVM+HOG的人脸检测matlab程序。内含libsvm-3.22 SVM库。 资源中tgrs2013_epfifr.rar可不需要解压,可以无视。 该程序自动读取人脸库文件夹下不同人物的照片,可实现遍历文件夹及子文件夹下包含的图片,进而提取特征利用SVM训练分类识别。这可以作为一个baseline,基础框架,在这个基础上可以提取更多特征进而提高识别精度。 由于人脸库是我们自己构造的,涉及了个人隐私,不能共享,所以本程序中人脸库文件下图像需要自己提供哦,然后自己构造相应的训练样本便可以运行了。
车牌识别--提取HOG特征
最近在研究车牌识别,利用到Opencv的ml.hpp,里面实现了各种机器学习算法,包括harrcascade、traincascade、支持向量机SVM提取HOG梯度向量特征,人工神经网络等等,而车牌识别又分为检测车牌位置和车牌号码识别。 车牌识别的几个步骤: 一、准备样本集(车牌、非车牌) 二、训练样本数据(SVM 支持向量机 提取HOG特征) 三、利用训练得到的分类器去分类车牌(Clas
车牌识别-字符识别(HOG+SVM)
车牌识别-字符识别算法识别架构 实用HOG+SVM算法实现,结合MATLAB进行验证,该算法具有百分之90以上的识别率,具有非常强的实用价值。
matlab版hog+svm图像二分类
该代码实现的是图像的二分类,hog用于图像的特征提取,svm表示的是对特征的分类。解压缩后,在添加到matlab的工作目录后,需要在代码中修改一下资源文件的路径(比如正负样本的图片路径),才可以正确运行。
hog+svm性别识别源码
基于opencv 的hog+svm性别识别源码 ,其中文件夹中生成xml,可以直接使用。可以作为参考代码
SVM+HOG对图像进行多分类(OpenCV实现)
前几个月写了篇关于MATLAB实现SVM+HOG对图像进行多分类,链接:http://blog.csdn.net/cuixing001/article/details/70908064,先开始是用opencv实现的,可是识别效果很差,以为我写错代码了,后来纠结了好久好久,才发现是核函数选择有很大问题!这次改为线性核,效果在这些图片中(所用的图像数据集为:链接: https://pan.baidu.
HOG人体特征提取+SVM分类器训练进行人体检测
HOG人体特征提取+SVM分类器训练进行人体检测
HOG特征提取原理
1.HOG特征前言 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子。它通过计算和统计图像局部区域的梯度方向直方图来构成特征。Hog特征结合SVM分类器已经被广泛应用于图像识别中,尤其在行人检测中获得了极大的成功。需要提醒的是,HOG+SVM进行行人检测的方法是法国研究人员Dalal在2005的
【机器学习--SVM+Hog特征描述进行图像分类】
Hog特征描述子作为深度学习之前比较火的人工特征描述子,往往和svm结合应用于行人检测等分类领域,在机器学习中仍具有比较好的应用。 具体在opencv使用步骤如下: Hog特征的数据集与标签数据集制作处理。 训练svm分类器 加载分类器进行预测 手写数字的识别是在很多领域常常遇见的情况,虽然简单但是不可或缺,也适合将整个处理过程进行统一学习。具体代码如下: #include <...
HOG特征(毕业论文节选)
HOG(Histograms of Oriented Gradients)特征是Dalal于2005年针对行人检测问题提出的特征,能够大体描述行人的轮廓[12]。HOG特征是目前行人检测领域最常用的特征。对于其它非行人目标的检测,HOG特征也取得了突出效果,可以说是目标检测邻域,单一特征中效果最好的特征[26]。此外,HOG特征还被应用到姿态估计[62],人脸识别[63],表情识
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 物联网毕设价格 大数据学习网站毕设