Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

qtsetblk

Establecer valores de bloque en la descomposición de cuadrárboles

Descripción

ejemplo

J = qtsetblk(I,S,dim,vals) reemplaza cada bloque -por- en la descomposición del cuadárbol de la imagen con el bloque correspondiente en . contiene la estructura del cuadrángulo.dimdimIvalsS

Ejemplos

contraer todo

Cree una matriz de ejemplo que represente una imagen pequeña.

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];

Realice una descomposición de cuadrángulo de la imagen, especificando un umbral de 5. divide un bloque si el valor máximo de los elementos de bloque menos el valor mínimo de los elementos de bloque es mayor que el umbral.qtdecomp

S = qtdecomp(I,5);

Consigue los bloques de tamaño 4 por 4 de la descomposición del cuadrángulo.

vals = qtgetblk(I,S,4);

Calcule el modo de cada bloque 4 por 4 y establezca todos los valores para que sean iguales al modo.

valmodes = zeros(size(vals)); for blknum = 1:size(vals,3)     valmodes(:,:,blknum) = mode(vals(:,:,blknum),'all'); end

Establezca los bloques de la imagen en los nuevos valores. Los bloques de 4 por 4 de la imagen ahora son homogéneos.

J = qtsetblk(I,S,4,valmodes)
J = 8×8

     1     1     1     1     2     3     6     6
     1     1     1     1     4     5     6     8
     1     1     1     1    10    15     7     7
     1     1     1     1    20    25     7     7
    20    20    20    20     1     2     3     4
    20    20    20    20     5     6     7     8
    20    20    20    20     9    10    11    12
    20    20    20    20    13    14    15    16

Argumentos de entrada

contraer todo

Imagen en escala de grises, especificada como una matriz numérica.

Tipos de datos: single | double | int16 | uint8 | uint16 | logical

Estructura de Cuadrángulo, especificada como una matriz dispersa. Si ( , ) es distinto de cero, la coordenada ( , ) es la esquina superior izquierda de un bloque en la descomposición, y el tamaño del bloque se da por ( , ).SmnmnSmn Puede obtener una estructura de cuadrángulo mediante la función.qtdecomp

Tipos de datos: double

Tamaño de bloque, especificado como un entero positivo.

Valores de bloque, especificados como una matriz -by- -by-, donde está el número de bloques -by- en la descomposición del cuadrángulo.dimdimkkdimdim

El orden de los bloques en debe coincidir con el orden de columna de los bloques en .valsI Por ejemplo, si es 4 por 4 por 2, contiene los valores utilizados para reemplazar el primer bloque 4 por 4 en , y contiene los valores utilizados para reemplazar el segundo bloque 4 por 4.valsvals(:,:,1)Ivals(:,:,2)

Consulte también

|

Introducido antes de R2006a