首页 > 解决方案 > 如何使用多项式曲线拟合和圆形拟合算法分割乳房以分割/分离左右乳房?

问题描述

我正在研究在 MATLAB 中用于早期检测乳腺癌的乳房热图。但我无法分割和分离每个乳房。我尝试了第二个多项式曲线拟合算法,但没有奏效。无论乳房大小,下外侧象限都应完全包括在内,因为该算法应针对不同的乳房和乳房大小。我的目的和愿望是自动分离左乳房和右乳房以进行双边不对称分析。

你可以在下面看到我想要的。

乳房热像图//原始图片。

检测 4 条曲线// 检测到 4 条乳房曲线

曲线拟合、圆形拟合和左右分开的乳房//子图(b)和(c)显示了我的愿望。

检测乳房4条曲线、圆形拟合和乳房区域的条件:

你能帮我解决我的问题吗?我期待着收到您的来信。提前致谢。

clc; clear; close all;
a=rgb2gray(imread('DINAMIC-FRONTAL.jpg'));
en= imsharpen(a,'Radius',2,'Amount',1);
B = imgaussfilt(en,1.4);
ed=edge(B,'canny',0.3,0.5);
figure();imshow(ed);title('canny edge');
bw1=bwareaopen(ed,10);
se = strel('disk',4);
bw=imdilate(bw1,se);
figure();imshow(bw);
[y x] = find( bw );
right = find(min(a));
as=findpeaks(y);
xr = x(right);
yr = y(right);
xl = x(as);
yl = y(as);
pr = polyfit( yr, xr, 2);  %// fit 2rd deg poly
pl = polyfit( yl, xl, 2 ); 
yy = linspace( 1, size(bw,1), 50 );
figure; imshow(a, 'border', 'tight' );
hold all
plot( polyval( pr, yy ), yy, '.-', 'LineWidth', 1 );
plot( polyval( pl, yy ), yy, '.-', 'LineWidth', 1 );

标签: matlabimage-processingcurve-fittingimage-segmentation

解决方案


推荐阅读