MATLAB 帮助中心
三维中位数滤波
B = medfilt3(A)
B = medfilt3(A,[m n p])
B = medfilt3(___,padopt)
B = medfilt3(A) 使用 3×3×3 滤波器对三维图像 A 进行滤波。默认情况下,medfilt3 通过在边界处以镜像方式复制值来填充图像。
B
A
medfilt3
示例
B = medfilt3(A,[m n p]) 对三维图像 A 执行三维中位数滤波。B 中的每个输出体素包含 A 中对应体素周围 m×n×p 邻域的中位数值。
[m n p]
B = medfilt3(___,padopt) 控制 medfilt3 如何填充数组边界。
padopt
全部折叠
创建一个含噪三维曲面。
[x,y,z,V] = flow(50); noisyV = V + 0.1*double(rand(size(V))>0.95) - 0.1*double(rand(size(V))<0.05);
应用中位数滤波。
filteredV = medfilt3(noisyV);
一起显示含噪曲面和滤波曲面。
subplot(1,2,1) hpatch1 = patch(isosurface(x,y,z,noisyV,0)); isonormals(x,y,z,noisyV,hpatch1) set(hpatch1,FaceColor="red",EdgeColor="none") daspect([1,4,4]) view([-65,20]) axis tight off camlight left lighting gouraud subplot(1,2,2) hpatch2 = patch(isosurface(x,y,z,filteredV,0)); isonormals(x,y,z,filteredV,hpatch2) set(hpatch2,FaceColor="red",EdgeColor="none") daspect([1,4,4]) view([-65,20]) axis tight off camlight left lighting gouraud
输入图像,指定为三维数值或逻辑数组。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
single
double
int8
int16
int32
int64
uint8
uint16
uint32
uint64
logical
[3 3 3]
邻域大小,指定为由正奇整数组成的三元素向量。
数据类型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32
"symmetric"
"zeros"
"replicate"
填充选项,指定为下列值之一:
[314159265]→[5115995133144113314415115995622655662265565115995]
[314159265]→[3331444333144433314441115999222655522265552226555]
0
[314159265]→[0000000000000000314000015900002650000000000000000]
数据类型: char | string
char
string
输出图像,以与输入图像 A 大小和数据类型相同的数值三维数组形式返回。
全部展开
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
medfilt3 现在支持基于线程的环境。
medfilt3 函数在处理从 [3, 3, 3] 到 [31, 31, 31] 的邻域大小时的性能得到改进。
例如,以下代码比以前的版本快 3 倍。
function timingTestMedfilt3 load mristack; noisyV = imnoise(mristack,'salt & pepper',0.2); tic filteredV = medfilt3(noisyV); toc end
大致的执行时间是:
R2021a:0.24 秒
R2021b:0.08 秒
代码是在运行 Windows® 10 的Intel® Xeon® Gold 5220 CPU @ 2.2 GHz 测试系统上通过调用函数 timingTestMedfilt3 进行计时的。
timingTestMedfilt3
medfilt2
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处