weixin_44965120 2019-05-07 22:48
浏览 208

如何用matlab基于宽度变化来切割图象?

图片说明
就我这里有个二值化后的图了 然后投影在X轴上, 如何根据图象的宽度剧烈变化的那个点把图象分割成2部分呢? 就羽毛和很长一截的屁股切开。如图
已有代码如下:
clc,clear
I=imread('1.bmp');
I=rgb2gray(I);
imshow(I);
%输出直方图
figure;imhist(I);
T2=graythresh(I);
BW2=im2bw(I,T2);%Otus阈值进行分割
figure;imshow(BW2),title('Otus阈值进行分割');
nhood = true(9);
openBWao = imopen(BW2,nhood);%形态学关操作
figure, imshow(openBWao)%显示边缘光滑后的图像

T = openBWao;
[m, n]=size(T);
% 求垂直投影
for y=1:n
S(y)=sum(T(1:m,y));
end
y=1:n;
figure
plot(y,S(y));
title('垂直投影');

![图片说明](https://img-ask.csdn.net/upload/201905/07/1557240192_348647.png)

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥100 Jenkins自动化部署—悬赏100元
    • ¥15 关于#python#的问题:求帮写python代码
    • ¥20 MATLAB画图图形出现上下震荡的线条
    • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
    • ¥15 perl MISA分析p3_in脚本出错
    • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
    • ¥15 ubuntu虚拟机打包apk错误
    • ¥199 rust编程架构设计的方案 有偿
    • ¥15 回答4f系统的像差计算
    • ¥15 java如何提取出pdf里的文字?