Main Content

niqeModel

Modelo de Evaluador de la calidad de imágenes naturales (NIQE)

Descripción

Un objeto niqeModel encapsula un modelo usado para calcular la puntuación de calidad perceptiva del Evaluador de la calidad de imágenes naturales (NIQE).

Creación

Puede crear un objeto niqeModel empleando los métodos siguientes:

  • fitniqe: entrene un modelo NIQE con los parámetros derivados de su almacén de datos de imágenes. Utilice esta función si no cuenta con un modelo preentrenado.

  • La función niqeModel aquí descrita. Utilice esta función si cuenta con un modelo NIQE preentrenado o si el modelo predeterminado es suficiente para su aplicación.

Descripción

ejemplo

m = niqeModel crea un objeto de modelo NIQE con valores predeterminados de propiedades que se derivan de una base de datos de imágenes nítidas indicada en [1].

ejemplo

m = niqeModel(mean,covariance,blockSize,sharpnessThreshold) crea un modelo NIQE personalizado y establece las propiedades Mean, Covariance, BlockSize y SharpnessThreshold. Debe proporcionar los cuatro argumentos para crear un modelo personalizado.

Propiedades

expandir todo

Media de los vectores de características de imágenes basados en estadísticas de la escena natural (NSS), especificada como vector fila numérico de 36 elementos.

Ejemplo: rand(1,36)

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Matriz de covarianzas de vectores de características de imágenes basados en NSS, especificada como matriz numérica de 36 por 36.

Ejemplo: rand(36,36)

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Tamaño del bloque utilizado para dividir una imagen en bloques no solapados, especificado como vector fila de 2 elementos de enteros pares positivos. Los dos elementos especifican el número de filas y columnas en cada partición, respectivamente.

Ejemplo: [10 10]

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Umbral de nitidez utilizado para calcular vectores de características, especificado como escalar real en el intervalo [0, 1]. El umbral determina qué bloques se seleccionan para calcular los vectores de características.

Ejemplo: 0.25

Tipos de datos: single | double

Ejemplos

contraer todo

model = niqeModel
model = 
  niqeModel with properties:

                  Mean: [2.3167 0.7556 0.7429 0.0746 0.0951 0.1466 0.7509 0.0488 0.1082 0.1379 0.7694 -0.0182 0.1343 0.1194 0.7686 -0.0199 0.1343 0.1185 2.5733 0.7868 0.7772 0.0742 0.1062 0.1588 0.7894 0.0428 0.1221 0.1503 0.7998 ... ] (1x36 double)
            Covariance: [36x36 double]
             BlockSize: [96 96]
    SharpnessThreshold: 0

Cree un objeto niqeModel utilizando las propiedades precalculadas Mean, Covariance, BlockSize y SharpnessThreshold. Se muestran inicializaciones aleatorias únicamente con fines ilustrativos.

 model = niqeModel(rand(1,36),rand(36,36),[10 10],0.25);

Puede utilizar el modelo personalizado para calcular la puntuación NIQE de una imagen.

I = imread('lighthouse.png');
score = niqe(I,model)
score = 3.6866

Referencias

[1] Mittal, A., R. Soundararajan, and A. C. Bovik. "Making a Completely Blind Image Quality Analyzer." IEEE Signal Processing Letters. Vol. 22, Number 3, March 2013, pp. 209–212.

Historial de versiones

Introducido en R2017b