• 大小: 3.08MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-28
  • 语言: 其他
  • 标签: kmeans  

资源简介

运行环境:vs2012+opencv3.0.0 应用kmeans算法对图像进行量化处理。

资源截图

代码片段和文件信息

#include
#include
#include
#include
using namespace std;
using namespace cv;

int main()
{
Mat img=imread(“e:/test-pic/pic12.jpg“);
Mat r(img.rowsimg.colsCV_8U);
Mat g(img.rowsimg.colsCV_8U);
Mat b(img.rowsimg.colsCV_8U);
Mat D[]={bgr};
imshow(“source“img);
//分离img的三个通道
split(imgD);

//对三个通道分别K-mean聚类--r
Mat temp=Mat::zeros(img.rows*img.cols1CV_32F);
Mat temp2;
int num=4;
Mat center(num1CV_8U);
imshow(“聚类前的r分量“r);
for(int i=0;i {
for(int j=0;j {
temp.at(i*img.cols+j0)=r.at(ij);
}
}
kmeans(tempnumtemp2TermCriteria (TermCriteria::COUNT + TermCriteria::EPS 10 0.1)3KMEANS_RANDOM_CENTERScenter);
int aaa;
for(int i=0;i {
for(int j=0;j {
aaa=temp2.at(i*img.cols+j0);
r.at(ij)=(uchar)center.at(aaa0);

}
}
imshow(“聚类后的r分量“r);
//-g分量
imshow(“聚类前的g分量“g);
for(int i=0;i {
for(int j=0;j {
temp.at(i*img.cols+j0)=g.at(ij);
}
}
kmeans(tempnumtemp2TermCriteria (TermCriteria::COUNT + TermCriteria::EPS 10 0.1)3KMEANS_RANDOM_CENTERScenter);
for(int i=0;i {
for(int j=0;j {
aaa=temp2.at(i*img.cols+j0);
g.at(ij)=(uchar)center.at(aaa0);

}
}
imshow(“聚类后的g分量“g);
//-b分量
imshow(“聚类前的b分量“b);
for(int i=0;i {
for(int j=0;j {
temp.at(i*img.cols+j0)=b.at(ij);
}
}
kmeans(tempnumtemp2TermCriteria (TermCriteria::COUNT + TermCriteria::EPS 10 0.1)3KMEANS_RANDOM_CENTERScenter);
for(int i=0;i {
for(int j=0;j {
aaa=temp2.at(i*img.cols+j0);
b.at(ij)=(uchar)center.at(aaa0);

}
}
imshow(“聚类后的b分量“b);

//聚类后的rgb分量合成彩色图
merge(D3img);
imshow(“聚类后的彩色图片“img);

waitKey();
return 0;
}

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

     文件        460  2015-03-15 16:58  k-mean\Debug\cl.command.1.tlog

     文件      12262  2015-03-15 16:58  k-mean\Debug\CL.read.1.tlog

     文件        252  2015-03-15 16:58  k-mean\Debug\CL.write.1.tlog

     文件       3011  2015-03-15 16:24  k-mean\Debug\k-mean.Build.CppClean.log

     文件      85504  2015-03-15 16:58  k-mean\Debug\k-mean.exe

     文件     690112  2015-03-15 16:58  k-mean\Debug\k-mean.ilk

     文件         62  2015-03-15 16:58  k-mean\Debug\k-mean.lastbuildstate

     文件       1238  2015-03-15 16:58  k-mean\Debug\k-mean.log

     文件    1420288  2015-03-15 16:58  k-mean\Debug\k-mean.pdb

     文件          2  2015-03-15 16:58  k-mean\Debug\link-cvtres.read.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link-cvtres.write.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link-rc.read.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link-rc.write.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.2228-cvtres.read.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.2228-cvtres.write.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.2228-rc.read.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.2228-rc.write.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.2228.read.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.2228.write.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.6584-cvtres.read.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.6584-cvtres.write.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.6584-rc.read.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.6584-rc.write.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.6584.read.1.tlog

     文件          2  2015-03-15 16:58  k-mean\Debug\link.6584.write.1.tlog

     文件       1100  2015-03-15 16:58  k-mean\Debug\link.command.1.tlog

     文件       2306  2015-03-15 16:58  k-mean\Debug\link.read.1.tlog

     文件        370  2015-03-15 16:58  k-mean\Debug\link.write.1.tlog

     文件     470016  2015-03-15 16:58  k-mean\Debug\vc110.idb

     文件     880640  2015-03-15 16:58  k-mean\Debug\vc110.pdb

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

评论

共有 条评论