我修改了例子来处理4 x 4图像,使用2 x 2块,返回原始图像的简单的目标。目的是满足,但我有一些问题如何得到它的。
定义图像
=重塑(1:16,4,4)
一个=4×4
1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16
在路上叫blockproc和输出一些信息:
B = blockproc (@blockfun, (2, 2),“BorderSize”[1],“PadMethod”,100)
S =结构体字段:
边界:[1]blockSize:[2 2]数据:[4×4双]图象尺寸:4[4]地点:[1]
data =4×4
100 100 100 100 100 100 5 9 100 2 6 10 3 7 11
S =结构体字段:
边界:[1]blockSize:[2 2]数据:[4×4双]图象尺寸:4[4]位置:1 [3]
data =4×4
100 100 100 100 5 9 6 14 100 7 11 100 - 100
S =结构体字段:
边界:[1]blockSize:[2 2]数据:[4×4双]图象尺寸:4[4]位置:1 [3]
data =4×4
100年2 6 7 11 100 100 4 8 12 100 100 100 100
S =结构体字段:
边界:[1]blockSize:[2 2]数据:[4×4双]图象尺寸:4[4]地点:[3 3]
data =4×4
6 10 100 100 7 11 15 8 12 100 100 100 100 100
B =4×4
1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16
问题1:blockfun block_struct输入的数据字段大小4 x 4。显然,块的大小与边界补充道。文档页面blockproc说数据字段大小m x n。但参数m和n指定块大小(第二个输入参数blockproc),在这种情况下是2 x 2。医生页面使用m和n意味着不同的东西在不同的地方吗?此外,数据字段的文档页面说“数据块”,不是“和边界数据块。”What is the data field really supposed to be?
问题2:我的阅读的文档页面边界周围的元素2 x 2块都应该基于PadMethod 100。假设数据字段是块和边界,它看起来像图像数据被抓住,并插入块的边界。我误解什么?
问题3:文档页面说PadMethod定义方法垫图像边界,“不该说“块边界”吗?
编辑:我猜它的工作方式是,PadMethod垫图像边界,然后每一块周围的边界形成的形象。但是,这是什么意思:“函数垫块边界超出图像边缘与零。”Aren't the borders extending beyond the image padded based on PadMethod?