主要内容

qtgetblk

四叉树分解中的块值

描述

例子

瓦尔斯rc= qtgetblk()年代昏暗的返回大小为昏暗的——- - - - - -昏暗的从图像用四叉树分解年代。函数返回中的块值瓦尔斯并将左上角的行、列坐标块在rc

瓦尔斯idx= qtgetblk()年代昏暗的中的块值瓦尔斯然后是左上角的线性指数idx

例子

全部折叠

创建一个表示小图像的示例矩阵。

I = [1 11 12 3 6 6 11 2 14 5 6 8 11 11 11 10 15 7 7 11 11 11 20 25 7 7 20 22 20 22 12 3 4 20 22 22 20 5 6 7 8 20 22 20 20 9 10 11 12 22 22 22 20 20 13 14 15 16];

执行图像的四叉树分解,指定阈值为5。qtdecomp如果块元素的最大值减去块元素的最小值大于阈值,则分割块。

S = qtdecomp(I,5)
S =(1,1) 4(5、1)4(1、5)2(3、5)1(4、5)1(5,5)2(7,5)2(3、6)1(4、6)1(1、7)2(3、7)2(5、7)2 (7)2

从四叉树分解中得到大小为4 × 4的块。qtgetblk找到两个这样大小的块。

[vals,r,c] = qtgetblk(I,S,4);

选择第二个返回的块。显示块左上角的值和(行、列)坐标。

Blknum = 2;blockValues = vals(:,:,blknum)
blockValues =4×42022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2020
blockCoordinates = [“(”num2str (r (blknum)),','num2str (c (blknum)),“)”
blockCoordinates = '(5,1)'

输入参数

全部折叠

灰度图像,指定为数值矩阵。

数据类型:||int16|uint8|uint16|逻辑

四叉树结构,指定为稀疏矩阵。如果年代n)非零,则坐标(n)为分解中块的左上角,块的大小由年代n)。你可以得到一个四叉树结构qtdecomp函数。

数据类型:

块大小,指定为正整数。

输出参数

全部折叠

块值,作为昏暗的——- - - - - -昏暗的——- - - - - -k数组,k的数量是多少?昏暗的——- - - - - -昏暗的块在四叉树分解。如果四叉树分解不包含指定大小的块,则瓦尔斯作为空矩阵返回。

块的排序瓦尔斯中的块的按列顺序匹配。例如,如果瓦尔斯那么是4乘4乘2瓦尔斯(:,:1)中第一个4 × 4块的值,瓦尔斯(::2)包含第二个4 × 4块的值。

块的左上角的行坐标,返回为k-元素的正整数列向量,其中k的数量是多少?昏暗的——- - - - - -昏暗的块在四叉树分解。如果四叉树分解不包含指定大小的块,则r作为空矩阵返回。

块的左上角的列坐标,返回为k-元素的正整数列向量,其中k的数量是多少?昏暗的——- - - - - -昏暗的块在四叉树分解。如果四叉树分解不包含指定大小的块,则c作为空矩阵返回。

块左上角的线性索引,返回为k-元素的正整数列向量,其中k的数量是多少?昏暗的——- - - - - -昏暗的块在四叉树分解。如果四叉树分解不包含指定大小的块,则idx作为空矩阵返回。

另请参阅

|

R2006a之前引入