MATLAB小技巧(10)圆形检测实例

MATLAB小技巧(10)圆形检测实例

前言

MATLAB进行图像处理相关的学习是非常友好的,可以从零开始,对基础的图像处理都已经有了封装好的许多可直接调用的函数,这个系列文章的话主要就是介绍一些大家在MATLAB中常用一些概念函数进行例程演示!

图像世界中很多事物成像之后后都会有一定的形状信息,通过形状去对目标进行定位检测,也是一种有效的目标检测手段,日常生活中大多数的物品都是不规则的形状。但在二维成像之后基本可以看成是简单图像的组合,简单基本形状一般如三角形、矩形、多边形、圆形等。

本文简单示范一个MATLAB在圆形检测中的实例。可以了解一下圆形检测的关键参数,仿真实例在MATLAB2018b中运行得到仿真结果。

一. MATLAB仿真

%% 圆形检测实例
% date:2022-4-25 22:17:51
% author:C.S
clear all;
close all;
clc;

rgb=imread('coloredChips.png');
imshow(rgb);
gray_image=rgb2gray(rgb);
figure,imshow(gray_image);
[centersBright,radiiBright,metricBright]=imfindcircles(rgb,[20 25],'ObjectPolarity','bright','Sensitivity',0.92,'EdgeThreshold',0.1);
figure,imshow(rgb);
hBright=viscircles(centersBright,radiiBright);
[centers,radii]=imfindcircles(rgb,[20 25],'ObjectPolarity','dark','Sensitivity',0.92,'Method','twostage');
h = viscircles(centers,radii);

二. 仿真结果

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

三. 小结

常规的圆形检测相对而言较为简单,但实际场景中的目标并不是非常理想的规则圆,除去图中所示的遮挡,更多的是由于采集时的不同角度引起的各种变形,但他们依然有圆的特征,后续有应用到变形圆的检测,会继续进行深入介绍。每天学一个MATLAB小知识,大家一起来学习进步阿!

猜你喜欢

转载自blog.csdn.net/sinat_34897952/article/details/124416767