再谈extendedmax()函数 可以使用MATLAB图形处理工具箱中的函数来确定图像的高亮度区域和低亮度区域。 imregionalmax函数和imregionalmin函数确定所有的极大值和极小值 imextendedmax函数和imextendedmin函数确定大于某阈值的极大值和小于某阈值的极小值 这些函数报灰度图像作为输入参数,而把二值图像作为输出参数。在输出的二值图像中,局部极大值和局部极小值设为1,其他值设为0. imextendedmax函数和imextendedmin函数,以imextendedmax为例,是首先将输入的阈值减去再用imregionalmax来做操作的。 所以都是为了确定极大值和极小值。 使用extendedmax()函数,输入一个矩阵如图: A=[ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11; ] 赋值处理后: A = 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 15 15 15 15 15 15 15 15 15 15 15 15 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 采用:B=imextendedmax(A,2); B = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 采用:C=imextendedmin(A,2); C = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 图片减去背景的一种方法探究: 著名的大米图像减去背景: 原图像 I =imread('rice.png');%读取图像 imshow(I); background = imopen(I,strel('disk',20));%使用形态学图像开运算,将会删除那些不完全包括在半径为15的元盘中的图像 figure,imshow(background); I2=imsubtract(I,background);
我做的图像 注意分析我所要的图像和上述算法的不同之处: I =imread('ceshi1.jpg'); imshow(I); background = imclose(I,strel('disk',20));%此处我将上面程序中的开操作改成了关操作 figure,imshow(background); I2=imsubtract(background,I);%此处我用背景减去了原图像 figure,imshow(256-I2);%此为图像的取反操作,因为此RGB图像的最大值为256 |