摘要:图像对应方向的投影,就是在该方向取一条直线,统计垂直于该直线(轴)的图像上的像素的黑点数量,累加求和作为该轴该位置的值;基于图像投影的切割就是将图像映射成这种特征后,基于这种特征判定图像的切割位置(坐标),用这个坐标来切割原图像,得到目标图像。即可垂直投影的特点对车牌号进行切割。
(1)垂直投影
vector<Mat> verticalProjectionMat(Mat Image)
{
int perPixelValue;//每个像素的值
int width = Image.cols;
int height = Image.rows;
printf("图片的宽%d图片的高%d", width, height);
int* projectValArry = new int[width];//创建用于储存每列白色像素个数的数组
memset(projectValArry, 0, width * 4);//初始化数组
for (int col = 0; col < width; col++)//列
{
for (int row = 0; row < height; row++)//行
{
perPixelValue = Image.at<uchar>(row, col);//每个像素的值
if (perPixelValue == 255)//黑底白字 if (perPixelValue == 0)//白底黑字 】
{
projectValArry[col]++;//列的叠加
}
}
}