91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 11.26MB
    文件類型: .zip
    金幣: 1
    下載: 0 次
    發布日期: 2023-07-22
  • 語言: 其他
  • 標簽: SURF_BOW??SVM??

資源簡介

離線識別手勢圖像提取手勢SURF_BOW特征使用SVM多分類識別手勢

資源截圖

代碼片段和文件信息

/***author:Dengzhimin
time:2018-5-12
***/
#include?
#include?“opencv2/opencv.hpp“
#include?“opencv2/highgui/highgui.hpp“
#include?“opencv2/features2d/features2d.hpp“
#include?“opencv2/contrib/contrib.hpp“
#include?“opencv2/nonfree/nonfree.hpp“
#include?“opencv2/opencv_modules.hpp“
#include?“opencv2/ml/ml.hpp“
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?

using?namespace?std;
using?namespace?cv;
int?_tmain(int?argc?_TCHAR*?argv[])
{
int?K?=?7;
vector?img_path;//圖像路徑容器??
vector?img_catg;//圖像類別容器
int?nLine?=?0;
string?buf;
ifstream?svm_data(“C:\\Users\\MelonH\\Desktop\\樣本2\\新建文件夾\\手勢路徑.txt“);//訓練樣本圖片的路徑都寫在這個txt文件中,使用bat批處理文件可以得到這個txt文件?
if?(!svm_data)
return?1;
unsigned?long?n;
while?(svm_data)//將訓練樣本文件依次讀取進來????
{
if?(getline(svm_data?buf))//從流中取一行字符
{
nLine++;
if?(nLine?%?2?==?0)//注:奇數行是圖片全路徑,偶數行是標簽?
{
img_catg.push_back(atoi(buf.c_str()));//atoi將字符串轉換成整型,標志(01,2,...,9),注意這里至少要有兩個類別,否則會出錯????
}
else
{
img_path.push_back(buf);//圖像路徑????
}
}
}
svm_data.close();//關閉文件????
CvMat?*data_mat?*res_mat;
int?nImgNum?=?nLine?/?2;?//nImgNum是樣本數量,只有文本行數的一半,另一半是標簽?????

data_mat?=?cvCreateMat(nImgNum200?CV_32FC1);??//第二個參數,即矩陣的列是由下面的descriptors的大小決定的,可以由descriptors.size()得到,且對于不同大小的輸入訓練圖片,這個值是不同的??
cvSetZero(data_mat);
//類型矩陣存儲每個樣本的類型標志????
res_mat?=?cvCreateMat(nImgNum?1?CV_32FC1);
cvSetZero(res_mat);
IplImage*?src;
IplImage*?srcc;
IplImage*?trainImg1?=?cvCreateImage(cvSize(128128)?8?3);//需要分析的圖片,這里車標的圖片尺寸都為40*32,所以上面定義了432,如果要更改圖片大小,可以先用debug查看一下descriptors是多少,然后設定好再運行????

Mat?allDescriptors;//訓練集中圖片的feature

BOWKMeansTrainer?bowtrainer(200);//SURF描述子進行聚類,用K-means聚類,n=1000,聚成1000類
Mat?vocab;//SURF描述子進行聚類向量
SurfFeatureDetector?detector;//?構造SURF特征檢測器,SurfFeatureDetector?surf(3000);?//?可以設定閾值
SurfDescriptorExtractor?extractor;//描述子提取器extractors?

#if?1
//處理SURF特征??
for?(string::size_type?i?=?0;?i?!=?img_path.size();?i++)//只包含圖片不包含類別,讀取所有圖片的feature,
//并且聚成1000類返回一千個向量,每個向量是某個類別的feature的中心點。
{
src?=?cvLoadImage(img_path[i].c_str()?1);
if?(src?==?NULL)
{
cout?< continue;
}

cout?<
cvResize(src?trainImg1);

Mat?trainImg?=?cvarrToMat(trainImg1?true);

Mat?element?=?getStructuringElement(MORPH_RECT?Size(2?2));
dilate(trainImg?trainImg?element);
medianBlur(trainImg?trainImg?3);
Mat?element2?=?getStructuringElement(MORPH_RECT?Size(2?2));?//第一個參數MORPH_RECT表示矩形的卷積核,當然還可以選擇橢圓形的、交叉型的
//高級形態學處理,調用這個函數就可以了,具體要選擇哪種操作,就修改第三個參數就可以了。這里演示的是形態學梯度處理
morphologyEx(trainImg?trainImg?MORPH_CLOSE?element2);
Mat?descriptors;
vector?keyPoints;//存放SURF特征點的向量
????detector.detect(trainImg

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-05-25?20:33??svm+SURF-試驗\
?????目錄???????????0??2018-05-25?20:33??svm+SURF-試驗\Debug\
?????文件??????202752??2018-04-12?00:55??svm+SURF-試驗\Debug\svm+hog.exe
?????文件?????1009556??2018-04-12?00:55??svm+SURF-試驗\Debug\svm+hog.ilk
?????文件?????6376448??2018-04-12?00:55??svm+SURF-試驗\Debug\svm+hog.pdb
?????文件??????156992??2018-05-12?12:41??svm+SURF-試驗\readme.docx
?????目錄???????????0??2018-05-25?20:33??svm+SURF-試驗\Release\
?????文件???????39424??2017-05-25?17:25??svm+SURF-試驗\Release\svm+hog.exe
?????文件?????1346560??2017-05-25?17:25??svm+SURF-試驗\Release\svm+hog.pdb
?????目錄???????????0??2018-05-25?20:33??svm+SURF-試驗\svm+hog\
?????文件????14155776??2018-05-12?15:20??svm+SURF-試驗\svm+hog.sdf
?????文件?????????967??2016-06-01?09:22??svm+SURF-試驗\svm+hog.sln
?????文件???????37888??2018-05-12?15:20??svm+SURF-試驗\svm+hog.v12.suo
?????目錄???????????0??2018-05-25?20:33??svm+SURF-試驗\svm+hog\Debug\
?????文件????????2571??2016-06-01?11:24??svm+SURF-試驗\svm+hog\Debug\recognition.obj
?????文件????????2936??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\svm+hog.log
?????目錄???????????0??2018-05-25?20:33??svm+SURF-試驗\svm+hog\Debug\svm+hog.tlog\
?????文件????????5096??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\svm+hog.tlog\cl.command.1.tlog
?????文件???????18360??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\svm+hog.tlog\CL.read.1.tlog
?????文件?????????400??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\svm+hog.tlog\CL.write.1.tlog
?????文件???????12380??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\svm+hog.tlog\link.command.1.tlog
?????文件????????6562??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\svm+hog.tlog\link.read.1.tlog
?????文件?????????376??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\svm+hog.tlog\link.write.1.tlog
?????文件?????????179??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\svm+hog.tlog\svm+hog.lastbuildstate
?????文件??????862366??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\train.obj
?????文件?????2296832??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\vc120.idb
?????文件?????1626112??2018-04-12?00:55??svm+SURF-試驗\svm+hog\Debug\vc120.pdb
?????文件??????172720??2018-04-12?02:05??svm+SURF-試驗\svm+hog\HOG_SVM_LOGO.xml
?????目錄???????????0??2018-05-25?20:33??svm+SURF-試驗\svm+hog\Release\
?????文件????????2320??2017-05-25?17:25??svm+SURF-試驗\svm+hog\Release\svm+hog.log
?????目錄???????????0??2018-05-25?20:33??svm+SURF-試驗\svm+hog\Release\svm+hog.tlog\
............此處省略16個文件信息

評論

共有 條評論