qtgetblk

Блокируйте значения в разложении дерева квадрантов

Синтаксис

[vals, r, c] = qtgetblk(I, S, dim)
[vals, idx] = qtgetblk(I, S, dim)

Описание

[vals, r, c] = qtgetblk(I, S, dim) возвращает в vals массив, содержащий dim-by-dim блоки в разложении дерева квадрантов I. S является разреженной матрицей, возвращенной qtdecomp; это содержит структуру дерева квадрантов. vals является dim-by-dim-by-k массив, где k является количеством dim-by-dim блоки в разложении дерева квадрантов; при отсутствии блоков заданного размера, все выходные параметры возвращены как пустые матрицы. r и c являются векторами, содержащими координаты строки и столбца левых верхних углов блоков.

[vals, idx] = qtgetblk(I, S, dim) возвращает в idx вектор, содержащий линейные индексы левых верхних углов блоков.

Поддержка класса

I может иметь класс logical, uint8, uint16, int16, single или double. S имеет класс sparse.

Примеры

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

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

Советы

Упорядоченное расположение блоков в vals совпадает с постолбцовым порядком блоков в I. Например, если vals 4 4 2, vals(:,:,1) содержит значения от первого блока 4 на 4 в I, и vals(:,:,2) содержит значения от второго блока 4 на 4.

Смотрите также

|

Представлено до R2006a