Red de conocimiento informático - Conocimiento informático - Cómo descomponer el contorno de una imagen

Cómo descomponer el contorno de una imagen

Simplemente coloque el kit de herramientas que necesita en una carpeta, por ejemplo, el nombre de la carpeta es contourlet, luego abra su MATLAB, seleccione Archivo-Establecer ruta-Agregar carpeta, luego seleccione la carpeta contourlet, seleccione el botón Guardar para guardar, debería. Podrá llamar a cualquier función del kit de herramientas directamente desde MATLAB.

Las funciones de este kit de herramientas se pueden llamar directamente en MATLAB, pero no se puede utilizar la Ayuda para ver cómo usarlas.

borrar todo;

clc;

Establecer parámetros

filt = '9-7'; Seleccionar filtro de descomposición LP

p>

dfilt = 'pkva'; Seleccionar filtro de descomposición DFB

nlevs = [0, 0, 4, 4, 5] Número de niveles DFB en cada nivel de pirámide

nlevs: vector de niveles de descomposición del grupo de filtros direccionales para cada nivel de pirámide (grueso a fino)

.

th = 3; da como resultado una eliminación de ruido del umbral 3*sigma

rho=3;

Cargar imagen

im = imread(' lena512.bmp');

im = double(im)/256;

sig = std(im(:));

sigma = sig / rho;

Transformación de contorno pequeña

Descomposición

y = pdfbdec(im, pfilt, dfilt, nlevs);

[c, s] = pdfb2vec( y);

nvar = pdfb_nest(tamaño(im, 1), tamaño(im, 2), pfilt, dfilt, nstd = pdfb_nest(nrows, ncols, pfilt, dfilt, nlevs)

cth = th * sigma * sqrt(nvar);

Procesamiento de coeficientes

c = c .* (abs(c) gt; cth);

Reconstrucción

y = vec2pdfb(c, s);

cim = pdfbrec(y, pfilt, dfilt);

Mostrar imagen

rango = [0, 1];

mapa de colores (gris

subtrama(1, 1, 1), imágenesc(cim); (41:168, 181:308), rango); imagen del eje desactivada

colormap(gray);

set(gca, 'FontSize', 8);

título('Descomposición de contornos', 'Tamaño de fuente', 10)