图像分类代码


基于OpenCV的图像分类技术,非监督分类中常用方法,简单实用
资源截图
代码片段和文件信息
// Classify.cpp : 定义控制台应用程序的入口点。
//

#include “stdafx.h“
#include 
#include “opencv2/core/core.hpp“
#include “opencv2/imgproc/imgproc.hpp“
#include “opencv2/highgui/highgui.hpp“
#include “opencv2/ml/ml.hpp“
#include 
using namespace std;
using namespace cv;

int main(int argc _TCHAR* argv[])
{
char * path = _T(“lena.jpg“);
int i = _access(path 0);
Mat src_img = imread(path CV_LOAD_IMAGE_UNCHANGED);//读图像
int width_src = src_img.cols;
int height_src = src_img.rows;

Mat samples = Mat::zeros(width_src*height_src 1 CV_32FC3);//创建样本矩阵,CV_32FC3代表32位浮点3通道(彩色图像)
Mat clusters;//类别标记矩阵
int k = 0;
for (int i = 0; i {
for (int j = 0; j {
//将像素点三通道的值按顺序排入样本矩阵
samples.at(k 0)[0] = (float)src_img.at(i j)[0];
samples.at(k 0)[1] = (float)src_img.at(i j)[1];
samples.at(k 0)[2] = (float)src_img.at(i j)[2];
}
}
int nCuster = 10;//聚类类别数,自己修改。
//聚类,KMEANS PP CENTERS Use kmeans++ center initialization by Arthur and Vassilvitskii
kmeans(samples nCuster clusters TermCriteria(CV_TERMCRIT_EPS + CV_TERMCRIT_ITER 10 1.0) 1 KMEANS_PP_CENTERS);

//显示聚类结果
Mat result = Mat::zeros(height_src width_src CV_8UC1);
k = 0;
int val = 0;
float step = 255 / (nCuster - 1);
for (int i = 0; i {
for (int j = 0; j {
val = 255 - clusters.at(k 0)*step;//int
result.at(i j) = val;
}
}
imshow(“原始图像“ src_img);
imshow(“聚类结果“ result);
waitKey(0);
return 0;
}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      87040  2019-01-05 16:43  ImageClassifyDebugImageClassify.exe

     文件     558420  2019-01-05 16:43  ImageClassifyDebugImageClassify.ilk

     文件    2101248  2019-01-05 16:43  ImageClassifyDebugImageClassify.pdb

     文件        416  2019-01-05 16:04  ImageClassifyImageClassifyDebugImageClassify.Build.CppClean.log

     文件       1822  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.log

     文件     289376  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.obj

     文件        606  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.tlogcl.command.1.tlog

     文件      32548  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.tlogCL.read.1.tlog

     文件        568  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.tlogCL.write.1.tlog

     文件        170  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.tlogImageClassify.lastbuildstate

     文件       1368  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.tloglink.command.1.tlog

     文件       2940  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.tloglink.read.1.tlog

     文件        528  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.tloglink.write.1.tlog

     文件     871424  2019-01-05 16:43  ImageClassifyImageClassifyDebugvc120.idb

     文件     708608  2019-01-05 16:43  ImageClassifyImageClassifyDebugvc120.pdb

     文件       1699  2019-01-05 16:43  ImageClassifyImageClassifyImageClassify.cpp

     文件       3942  2019-01-05 16:38  ImageClassifyImageClassifyImageClassify.vcxproj

     文件       1278  2019-01-05 16:07  ImageClassifyImageClassifyImageClassify.vcxproj.filters

     文件      91814  2010-12-05 06:13  ImageClassifyImageClassifylena.jpg

     文件    2010624  2010-12-05 10:38  ImageClassifyImageClassifyopencv_core220.dll

     文件    3589632  2010-12-05 10:37  ImageClassifyImageClassifyopencv_core220d.dll

     文件     776192  2010-12-05 10:38  ImageClassifyImageClassifyopencv_highgui220.dll

     文件    1716224  2010-12-05 08:45  ImageClassifyImageClassifyopencv_highgui220d.dll

     文件         80  2019-01-05 16:04  ImageClassifyImageClassifystdafx.h

     文件        234  2019-01-05 16:04  ImageClassifyImageClassify argetver.h

     文件   37552128  2019-01-05 17:09  ImageClassifyImageClassify.sdf

     文件        985  2019-01-05 15:59  ImageClassifyImageClassify.sln

    ..A..H.     23040  2019-01-05 17:09  ImageClassifyImageClassify.v12.suo

     目录          0  2019-01-05 16:43  ImageClassifyImageClassifyDebugImageClassify.tlog

     目录          0  2019-01-05 16:43  ImageClassifyImageClassifyDebug

............此处省略6个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)