programa de práctica matlab (efecto de pintura al óleo)

El algoritmo de efecto de pintura al óleo tiene dos parámetros, uno es el radio de filtro r y el otro es el número de bit de cuantificación q.

Principio de algoritmo:

1. Primero divida 0-255 en intervalos q de acuerdo con el número de bits de cuantificación;

2. Luego obtenga los píxeles dentro del radio de acuerdo con el radio del filtro r;

3. Cuente la cantidad de veces que aparecen los píxeles en el intervalo y encuentre el intervalo con la mayor cantidad de veces;

4. El valor promedio de todos los píxeles en el intervalo de tiempos máximos de cálculo se puede asignar al píxel filtrado actual.

El código matlab es el siguiente:

limpiar todo; 
cierra todo; 
clc; 

r = 1 ; % 滤波 半径
q = 8 ; % 量化 位数
img = imread ( ' lena.jpg ' ); 

[m, n] = tamaño (img); 
imshow (img) 

imgn = ceros (m + 2 * r + 1 , n + 2 * r + 1 ); 
imgn (r + 1 : m + r, r + 1 : n + r) = img; 
imgn ( 1 : r, r + 1 : n + r) = flipud (img ( 1 : r, 1: n));% expande el borde superior 
imgn ( 1 : m + r, n + r + 1 : n + 2 * r + 1 ) = fliplr (imgn ( 1 : m + r, n: n + r));% expande el derecho Límite 
imgn (m + r + 1 : m + 2 * r + 1 , r + 1 : n + 2 * r + 1 ) = flipud (imgn (m: m + r, r + 1 : n + 2 * r + 1 ));% Expandir el borde inferior 
imgn ( 1 : m + 2 * r + 1 , 1 : r) = fliplr (imgn ( 1 : m + 2 * r +1 , r + 1 : 2 * r)); % 扩展 左边界

re = imgn;
para i = r + 1 : m + r
     para j = r + 1 : n + r     
        w = imgn (ir: i + r, jr: j + r);        
        W = w (:); 
        
        cubos = celda (q + 1 , 1 ); 
        bucketind = ceros (q + 1 , 1 );
        para k = 1 : longitud (W) 
            ind = suelo (W (k) * q / 255) + 1 ; 
            cubos {ind} = [cubos {ind}; W (k)]; 
            bucketind (ind) = bucketind (ind) + 1 ;
        end 
        
        [~, ind] = max (bucketind); % 得到 cubos 中 数 最多 的 序号
        re (i, j) = media (cubos {ind});       
               
    
figura final    
final 
; 
imshow (re (r + 1 : m + r, r + 1 : n + r), []);

Imagen original:

El resultado:

Supongo que te gusta

Origin www.cnblogs.com/tiandsp/p/12726633.html
Recomendado
Clasificación