參考文獻:
%% 讀入
fid = './case1/test.bmp';
img_in = imread(fid);
figure,imshow(img_in),title('1');
img_in = double(img_in);
[m, n, d] = size(img_in);
%% 演算法引數配置
endorder = 2;
rad = 3;
% h = fspecial('gaussian',hsize,sigma)
% h = fspecial('log',hsize,sigma)
sigma1 = 1.0;
sigma2 = 2.0;
sigma3 = 4.0;
wig1 = 0.5;
wig2 = 0.5;
wig3 = 0.25;
filter_kernel1 = fspecial('gaussian',2*rad+1 , sigma1);
filter_kernel2 = fspecial('gaussian',2*rad+1 , sigma2);
filter_kernel3 = fspecial('gaussian',2*rad+1 , sigma3);
%% 演算法主體
b1 = imfilter(img_in,filter_kernel1,'symmetric');
b2 = imfilter(img_in,filter_kernel1,'symmetric');
b3 = imfilter(img_in,filter_kernel1,'symmetric');
d1 = img_in - b1;
d2 = b1 - b2;
d3 = b2 - b3;
d = (1-wig1.*get_sgn(d1)).*d1 + wig2.*d2 + wig3.*d3;
% figure, imshow(uint8(d(:,:,:).*128)),title('d');
figure, mesh(d(:,:,1)), title('d r');
figure, mesh(d(:,:,2)), title('d g');
figure, mesh(d(:,:,3)), title('d b');
%% 輸出影象
img_out_pre = img_in + endorder.*d;
img_out = img_out_pre;
overflow_cnt = 0;
for ch = 1:1:d
for rows = 1:1:m
for cols = 1:1:n
if img_out(rows, cols, ch) > 255
img_out(rows, cols, ch) = 255;
overflow_cnt = overflow_cnt + 1;
elseif img_out(rows, cols, ch) < 0
img_out(rows, cols, ch) = 0;
endend
endendfigure, imshow(uint8(img_out(:,:,:))),title('2');
keyboard
end
%% local function
function [var_sgn] = get_sgn(var_in)
% var_in : 輸入函式變數
% var_sgn: 輸出函式符號位
[m, n, d] = size(var_in)
var_sgn = zeros(m, n, d);
for ch = 1:1:d
for rows = 1:1:m
for cols = 1:1:n
if var_in(rows, cols, ch) < 0
var_sgn(rows, cols, ch) = -1;
else
var_sgn(rows, cols, ch) = 1;
end
endend
endend
如果fpga資源足夠,這個演算法實現起來複雜度並不是太高,效果還行。
多尺度 理解
1.比如有一幅影象,裡面有房子有車有人,在這整張圖上提取特徵,提取的是全域性的特徵 現在,擷取影象的一部分,比如擷取汽車的部分,並將其放大至與原圖相同的尺寸,在此時擷取後放大的圖上提取特徵,提取的是整幅影象中某一部分的詳細特徵。2.或者,例如在進行卷積時,如圖 隨便截的圖 分別提取出第 三 四 五層...
多尺度模板匹配
效果特別差 只能用來識別簡單的東西 僅供練手 import cv2 import numpy as np import os import time temp cv2.imread camera roll te jpg 模板 gray temp cv2.cvtcolor temp,cv2.color...
深度學習 多尺度的理解
多尺度訓練這個問題應該是可以分為兩個方面 乙個是影象金字塔,乙個是特徵金字塔吧。1 人臉檢測的mtcnn就是影象金字塔,使用多種解析度的影象送到網路中識別,時間複雜度自然就很高,畢竟每幅圖都要用多種scale去檢測。2 像fpn特徵金字塔網路,是在多個feature map上面識別的話,但是是一次影...