文章目录
# Matlab常用图像处理命令108例(八)
@[toc]
## 98. roifill
**功能**:在图像的任意区域中进行平滑插补。
**语法**:
```matlab
J = roifill(I, c, r)
J = roifill(I)
J = roifill(I, BW)
[J, BW] = roifill(...)
J = roifill(x, y, I, xi, yi)
[x, y, J, BW, xi, yi] = roifill(...)
举例:
I = imread('eight.tif');
c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];
J = roifill(I, c, r);
imshow(I)
figure, imshow(J)
相关命令:roifilt2, roipoly
99. roifilt2
功能:过滤敏感区域。
语法:
J = roifilt2(h, I, BW)
J = roifilt2(I, BW, fun)
J = roifilt2(I, BW, fun, P1, P2, ...)
举例:
h = fspecial('unsharp');
J = roifilt2(h, I, BW);
imshow(J)
相关命令:filter2, roipoly
100. roipoly
功能:选择一个敏感的多边形区域。
语法:
BW = roipoly(I, c, r)
BW = roipoly(I)
BW = roipoly(x, y, I, xi, yi)
[BW, xi, yi] = roipoly(...)
[x, y, BW, xi, yi] = roipoly(...)
举例:
I = imread('eight.tif');
c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];
BW = roipoly(I, c, r);
imshow(I)
figure, imshow(BW)
相关命令:roifilt2, roicolor, roifill
101. std2
功能:计算矩阵元素的标准偏移。
语法:
b = std2(A)
相关命令:corr2, mean2
102. subimage
功能:在一幅图中显示多个图像。
语法:
subimage(X, map)
subimage(I)
subimage(BW)
subimage(RGB)
subimage(x, y, ...)
h = subimage(...)
举例:
load trees
[X2, map2] = imread('forest.tif');
subplot(1, 2, 1), subimage(X, map)
subplot(1, 2, 2), subimage(X2, map2)
103. truesize
功能:调整图像显示尺寸。
语法:
truesize(fig, [mrows, mcols])
truesize(fig)
相关命令:imshow, iptsetpref, iptgetpref
104. uint8
功能:转换数据为8 位无符号整型。
语法:
B = uint8(A)
举例:
a = [1 3 5];
b = uint8(a);
whos
输出:
Name Size Bytes Class
a 1x3 24 double array
b 1x3 3 uint8 array
相关命令:double, im2double, im2uint8
105. uint16
功能:转换数据为16 位无符号整型。
语法:
I = uint16(X)
举例:
a = [1 3 5];
b = uint16(a);
whos
输出:
Name Size Bytes Class
a 1x3 24 double array
b 1x3 6 uint16 array
相关命令:double, datatypes, uint8, uint32, int8, int16, int32.
106. warp
功能:将图像显示到纹理映射表面。
语法:
warp(X, map)
warp(I, n)
warp(BW)
warp(RGB)
warp(z, ...)
warp(x, y, z, ...)
h = warp(...)
举例:
[x, y, z] = cylinder;
I = imread('testpat1.tif');
warp(x, y, z, I);
相关命令:imshow
107. wiener2
功能:进行二维适应性去噪过滤处理。
语法:
J = wiener2(I, [m n], noise)
[J, noise] = wiener2(I, [m n])
举例:
I = imread('saturn.tif');
J = imnoise(I, 'gaussian', 0, 0.005);
K = wiener2(J, [5 5]);
imshow(J)
figure, imshow(K)
相关命令:filter2, medfilt2
108. zoom
功能:缩放图像。
语法:
zoom on
zoom off
zoom out
zoom reset
zoom
zoom xon
zoom yon
zoom(factor)
zoom(fig, option)
相关命令:imcrop
参考文献
- Rafael C. Gonzalez, Richard E. Woods, and Steven L. Eddins. 2003. Digital Image Processing Using MATLAB. Prentice-Hall, Inc., USA.
- 阮秋琦. 数字图像处理(MATLAB版) [M]. 北京:电子工业出版社, 2014.
- 冈萨雷斯. 数字图像处理(第三版) [M]. 北京:电子工业出版社, 2011.
This section continues with the format used earlier. It includes explanations of various MATLAB image processing functions, examples, and related commands. The list goes up to the final command `zoom`.