首页 基金 正文

股票应用标记的分600369资金流向水岭算法介绍

wx头像 wx 2022-06-10 10:29:14 6
...

股票运用符号的分水岭算法介绍

假如图画中的方针物体是连在一起的,则切割起来会更困难,分水岭算法常常用于处理这类问题,通常会获得比较好的作用。分水岭切割算法把图画当作一副“地形图”,其间亮度比较强的区域像素值较大,而比较暗的区域像素比较小,经过寻觅“汇水盆地”和“分水岭鸿沟”,对图画进行切割。

过程:

1.读取图画

2.求取图画的鸿沟,在此基础上可直接运用分水岭切割算法,但作用欠安;

3.对图画的远景和布景进行符号,其间每个方针内部的远景像素都是相连的,布景里边的每个像素值都不归于任何方针物体;

4.核算切割函数,运用分水岭切割算法的完成

注:直接用分水岭切割算法作用并不好,假如在图画中对远景和布景进行标示差异,再运用分水岭算法会获得较好的切割作用。

例过程:

1.读取图画并求取图画的鸿沟。

rgb=imread('pears.png');%读取原图画

I=rgb2gray(rgb);%转化为灰度图画

figure;subplot(121)%显现灰度图画

imshow(I)

text(732,501,'ImagecourtesyofCorel',...

'FontSize',7,'HorizontalAlignment','right')

hy=fspecial('sobel');%sobel算子

hx=hy';

Iy=imfilter(double(I),hy,'replicate');%滤波求y方向边际

Ix=imfilter(double(I),hx,'replicate');%滤波求x方向边际

gradmag=sqrt(Ix.^2+Iy.^2);%求摸

subplot(122);imshow(gradmag,[]),%显现梯度

title('Gradientmagnitude(gradmag)')

2.直接运用梯度模值进行分水岭算法:

L=watershed(gradmag);%直接运用分水岭算法

Lrgb=label2rgb(L);%转化为五颜六色图画

figure;imshow(Lrgb),%显现切割后的图画

title('Watershedtransformofgradientmagnitude(Lrgb)')

3.分别对远景和布景进行符号:本例中运用形态学重建技能对远景方针进行符号,首要运用开操作,开操作之后能够去掉一些很小的方针。

se=strel('disk',20);%圆形结构元素

Io=imopen(I,se);%形态学开操作

figure;subplot(121)

imshow(Io),%显现履行开操作后的图画

title('Opening(Io)')

Ie=imerode(I,se);%对图画进行腐蚀

Iobr=imreconstruct(Ie,I);%形态学重建

subplot(122);imshow(Iobr),%显现重建后的图画

title('Opening-by-reconstruction(Iobr)')

Ioc=imclose(Io,se);%形态学关操作

figure;subplot(121)

imshow(Ioc),%显现关操作后的图画

title('Opening-closing(Ioc)')

Iobrd=imdilate(Iobr,se);%对图画进行胀大

Iobrcbr=imreconstruct(imcomplement(Iobrd),...

imcomplement(Iobr));%形态学重建

Iobrcbr=imcomplement(Iobrcbr);%图画求反

subplot(122);imshow(Iobrcbr),%显现重建求反后的图画

title('Opening-closingbyreconstruction(Iobrcbr)')

fgm=imregionalmax(Iobrcbr);%部分极大值

figure;imshow(fgm),%显现重建后部分极大值图画

股票应用标记的分600369资金流向水岭算法介绍

title('Regionalmaximaofopening-closingbyreconstruction(fgm)')

I2=I;

I2(fgm)=255;%部分极大值处像素值设为255

figure;imshow(I2),%在原图上显现极大值区域

title('Regionalmaximasuperimposedonoriginalimage(I2)')

se2=strel(ones(5,5));%结构元素

fgm2=imclose(fgm,se2);%关操作

fgm3=imerode(fgm2,se2);%腐蚀

fgm4=bwareaopen(fgm3,20);%开操作

I3=I;

I3(fgm4)=255;%远景处设置为255

figure;subplot(121)

imshow(I3)%显现修改后的极大值区域

title('Modifiedregionalmaxima')

bw=im2bw(Iobrcbr,graythresh(Iobrcbr));%转化为二值图画

subplot(122);imshow(bw),%显现二值图画

title('Thresholdedopening-closingbyreconstruction')

4.进行分水岭改换并显现:

D=bwdist(bw);%核算间隔

DL=watershed(D);%分水岭改换

bgm=DL==0;%求取切割鸿沟

figure;imshow(bgm),%显现切割后的鸿沟

title('Watershedridgelines(bgm)')

gradmag2=imimposemin(gradmag,bgm|fgm4);%置最小值

L=watershed(gradmag2);%分水岭改换

I4=I;

I4(imdilate(L==0,ones(3,3))|bgm|fgm4)=255;%远景及鸿沟处置255

figure;subplot(121)

imshow(I4)%杰出远景及鸿沟

title('Markersandobjectboundaries')

Lrgb=label2rgb(L,'jet','w','shuffle');%转化为伪五颜六色图画

subplot(122);imshow(Lrgb)%显现伪五颜六色图画

title('Coloredwatershedlabelmatrix')

figure;imshow(I),

holdon

himage=imshow(Lrgb);%在原图上显现伪五颜六色图画

set(himage,'AlphaData',0.3);

title('Lrgbsuperimposedtransparentlyonoriginalimage')

本文地址:https://www.changhecl.com/158317.html

退出请按Esc键