找到灰度图像中心条纹最大值的极值法?

wyc_gege 2017-11-03 09:13:27
#include<opencv2/core/core.hpp>
#include<opencv2/opencv.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<iostream>
#include <vector>
using namespace std;
using namespace cv;
void colorReduce(Mat& inputImage,Mat& outputImage);
int main()
{
Mat gray,dstImage;
Mat srcImage=imread("002.jpg");
cvtColor(srcImage,gray,CV_RGB2GRAY);
imshow("灰度图",gray);
dstImage.create(srcImage.rows,srcImage.cols,srcImage.type());
double time0=static_cast<double>(getTickCount());
colorReduce(gray,dstImage);
time0=((double)getTickCount()-time0)/getTickFrequency();
cout<<"此方法运行时间为:"<<time0<<"秒"<<endl;
imshow("效果图",dstImage);
waitKey(0);
}
void colorReduce(Mat& inputImage,Mat& outputImage)
{
outputImage=inputImage.clone();
int rowNumber=outputImage.rows;
int colNumber=outputImage.cols*outputImage.channels();
for(int i=0;i<rowNumber;i++)
{
uchar*data=outputImage.ptr<uchar>(i);
int max=190;
for(int j=0;j<colNumber;j++)
{
if (max<data[j])
{
max=data[j];
}
else
{
data[j]=0;
}

}
}
}
像素处理部分有问题,得出的图像有的行有两个像素点。请问编程如何选其一?
...全文
569 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wyc_gege 2017-11-06
  • 打赏
  • 举报
回复
谢谢!是中心线提取,不过我想实现一下极值法
影醉阏轩窗 2017-11-03
  • 打赏
  • 举报
回复
你看这篇博文:http://www.cnblogs.com/wjy-lulu/p/7402286.html
wyc_gege 2017-11-03
  • 打赏
  • 举报
回复

4,242

社区成员

发帖
与我相关
我的任务
社区描述
OpenCV相关技术交流专区
计算机视觉人工智能opencv 技术论坛(原bbs) 广东省·深圳市
社区管理员
  • OpenCV
  • 幻灰龙
  • OpenCV中国团队
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

OpenCV中国团队官方博客:https://blog.csdn.net/opencvchina

试试用AI创作助手写篇文章吧