Cannot detect dots in calibration image with detectCircleGridPoints
6 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Jos Muller
le 26 Avr 2023
Commenté : Jos Muller
le 8 Mai 2023
Hi all,
I'm trying to calibrate my camera based on a dotted pattern on a board. I see I can use the detectCircleGridPoints algorithm, but cannot get it to detect any of the points and get imagePoints = []. Below my code.
What am I doing wrong?
Best,
clc; clear all; close all;
fileName = 'dotted_cali_fig.tiff'; %to attach the file I had to put it in .png
img = imread(fileName);
patternDims = [7 35];
imagePoints = detectCircleGridPoints(img,patternDims,PatternType="symmetric")
0 commentaires
Réponse acceptée
Antoni Garcia-Herreros
le 26 Avr 2023
Hello Jos,
I'm not sure why detectCirlceGridPoints is not working, however, you could try using regionprops:
BW=imbinarize(img);
r=regionprops('table',imcomplement(BW),'Centroid','Circularity','Area');
R=table2array(r);
R=R(R(:,1)>5,:); % Filter by Area > 5 pixels
ListPoints=R(R(:,4)>prctile(R(:,4),5),:); % Filter by circularity
Hope this helps
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur MATLAB Support Package for IP Cameras dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!