how can i detect edge and eliminate it from face image ?

2 次查看(过去 30 天)
Hello, please some one tell me how can i detect edge from face image and than eliminate it for features point reduction ?

回答(1 个)

yanqi liu
yanqi liu 2021-11-3
clc; clear all; close all;
img = imread('https://www.mathworks.com/matlabcentral/answers/uploaded_files/787205/image.png');
im = rgb2gray(img);
pointTracker = vision.PointTracker('MaxBidirectionalError', 2);
points = detectMinEigenFeatures(im);
figure; imshow(img, []);
hold on; plot(points);
ed = edge(im, 'sobel');
figure; imshow(ed, []);
ind = [];
wh = 3;
for i = 1 : length(points)
try
rc = round(points(i).Location);
edi = ed(rc(2)-wh:rc(2)+wh,rc(1)-wh:rc(1)+wh);
if any(edi(:))
ind = [ind i];
end
catch
end
end
points(ind) = [];
figure; imshow(img, []);
hold on; plot(points);

类别

Help CenterFile Exchange 中查找有关 Image Segmentation and Analysis 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by