思路为对图片进行二值化,背景为0,对二值化后图片进行行或列像素值累加,像素值不为0时记录当前位置坐标
注:最后一行为rows-1;(用于训练集中正样本图片的处理)
#include<opencv2\opencv.hpp>
#include <cv.h>
#include<highgui.h>
#include <iostream>
using namespace std;
using namespace cv;
string filename,filename2;
int i = 1,width,height;
int num=0,colsnum,rowsnum;
Mat image,image_gray,image_src;
int x_1=0, x_2=0, y_1=0, y_2=0;
void main()
{
for (int j = 0;; j++)
{
waitKey(100);
filename = format("F:/jci/%d.jpg", i);
filename2 = format("F:/jci/res/%d.jpg", i);
image = imread(filename);
if (!image.data)
{
printf("图片读取完毕");
break;
}
#include <cv.h>
#include<highgui.h>
#include <iostream>
using namespace std;
using namespace cv;
string filename,filename2;
int i = 1,width,height;
int num=0,colsnum,rowsnum;
Mat image,image_gray,image_src;
int x_1=0, x_2=0, y_1=0, y_2=0;
void main()
{
for (int j = 0;; j++)
{
waitKey(100);
filename = format("F:/jci/%d.jpg", i);
filename2 = format("F:/jci/res/%d.jpg", i);
image = imread(filename);
if (!image.data)
{
printf("图片读取完毕");
break;
}