我想识别图像上的一个白色像素。我不知道如何重新调整它,因为汽车的颜色比汽车牌的白色更“白”。我写了一个可运行的代码,但我必须用鼠标选择一个车牌点,然后找到了carplate,我可以在它周围画一个矩形。 您是否有任何想法如何自动找到carplate的一个白色像素?用Matlab找到车牌白色像素
下面是代码:
clear all;
close all;
I= imread('volvo_frame_0001.bmp');
figure, imshow(I)
level=0.5;
BW=im2bw(I,level);
figure, imshow(BW);
BW2 = bwselect(BW,4);
figure, imshow(BW2);
hold on;
C = corner(BW2);
min_x = min(C(:,1));
max_x = max(C(:,1));
min_y = min(C(:,2));
max_y = max(C(:,2));
figure, imshow(I);
hold on;
BoxPolygon = [min_x, max_y; max_x, max_y; max_x, min_y; min_x, min_y; min_x, max_y;];
line(BoxPolygon(:, 1), BoxPolygon(:, 2), 'Color', 'g');
LPR是极其困难的,不能简单地识别在车牌白像素来解决。要通过使用适度简单的方法让LPR工作,您必须对输入图像有严格的限制。什么是您的汽车图像的设置,图像中是否只有一辆汽车?这辆车是从后面直接拍摄的吗?牌照是否总是位于图像的某个部分?图像分辨率高吗?什么是照明条件?不知道你正在使用什么样的输入,不可能给你指导。 – mags