0
我必须在Matlab中做笑脸检测,并且我被卡在唇角的过滤。为此我使用以下方法。Matlab中的笑脸检测
img = imread('smile.jpg');
faceDetector = vision.CascadeObjectDetector('Mouth','MergeThreshold',160);
cornerDetector = vision.CornerDetector('Method','Harris corner detection (Harris & Stephens)');
Irgb2gray=rgb2gray(img);
bboxes = step(faceDetector, Irgb2gray);
lips = imcrop(Irgb2gray,bboxes);
C = corner(lips);
imshow(lips);
hold on;
plot(C(:,1), C(:,2), 'r*');
我得到的图像的角落为:
我想申请一些过滤器,这样可以摆脱一些角落是嘴唇之外的。我被困在这一点上,我怎么会知道哪些是好角落,哪些不好? 然后,纠正角落后,我将不得不计算他们之间的距离,以便我可以告诉是否有笑脸。
任何人都可以请帮我过滤角落?我会感谢你。
喂smailing面孔和非模拟到神经网络,并开始训练 – dynamic
Hammad:如果你想手动找到微笑,然后找到角落是不错的选择 - 你可能会发现返回角之间的均方根距离。并选择它们之间最大距离的一对 –
另请尝试:如果您可以在最远的像素之间绘制线条,它应该可以解决问题,因为它很可能就是嘴唇之间的线条。 –