How to find the coordinate defect location in image any document to refer? Please help I am fyp student in mechanical engineering

조회 수: 2 (최근 30일)
clc
clear
close all
warning off;
x=imread('origin.jpg');
y=imread('capture.jpg');
diffImage = imabsdiff(x, y);
threshold = 5;
mask = diffImage >= threshold;
imshow(mask)
props = regionprops(mask, 'Area')
allAreas = [props.Area]
if ~isempty(props)
fprintf('Found %d defect areas.\n', length(props))
else
fprintf('Found no defect areas.\n')
end

채택된 답변

DGM
DGM 2022년 2월 25일
I'm going to assume that the attached image is the mask derived from x and y.
[mask map] = imread('https://www.mathworks.com/matlabcentral/answers/uploaded_files/906590/image.png');
mask = rgb2gray(ind2rgb(mask,map))>0.5;
props = regionprops(mask, 'Area','centroid'); % you can get both
allAreas = [props.Area] % row vector of areas
allAreas = 1×2
275 86
allCentroid = vertcat(props.Centroid) % Mx2 array of centroids [x y]
allCentroid = 2×2
74.4255 107.2582 112.9884 258.4186
imshow(mask); hold on
plot(allCentroid(:,1),allCentroid(:,2),'kx') % mark the centroids
% same as before
if ~isempty(props)
fprintf('Found %d defect areas.\n', length(props))
else
fprintf('Found no defect areas.\n')
end
Found 2 defect areas.
  댓글 수: 3
CHEE HOON SEOW
CHEE HOON SEOW 2022년 2월 25일
Thank you for reply appreaciate it.
I will read thought and understand the function code apply in the image segmentation tutorials.
Agains thanks for sharing

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Image Processing Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by