投影法
#include<iostream>
#include <opencv2/opencv.hpp>
#include <stdio.h>
using namespace std;
using namespace cv;
//************************************************************************************
Mat vertical_projection(Mat & input_src, Mat src) //输入二值化图片
{
/**************统计原图片中每列白色像素数目******************************/
int src_width = input_src.cols;
int src_height = input_src.rows;
int* col_array = new int[src_width]();//创建用于储存每列白色像素个数的数组
//memset(col_array, 0, src_width*4);//初始化数组
//取列白色像素个数
for (int i = 0; i < src_height; i++){
for (int j = 0; j < src_width; j++){
if (input_src.at<uchar>(i, j)){
col_array[j]++;
}
}
}
/**************将每列白色像素数目绘制成直方图***************************/
//定义画布 绘制垂直投影下每列白色像素的数目
Mat draw_col(src_height, src_width, CV_8UC1, Scalar(0));
for (int i = 0; i< src_width; i++){
for (int j