簡體   English   中英

HOG使用OpenCV,C ++中的HOGDescriptor進行可視化

[英]HOG features visualisation with OpenCV, HOGDescriptor in C++

我使用OpenCV C ++ Lib的HOGDescriptor來計算圖像的特征向量。 我想可視化源圖像中的功能。 誰能幫我?

我今天有完全一樣的問題。 使用OpenCV的HOGDescriptor::compute()函數為HOGDescriptor::compute()圖像計算HOGDescriptor向量很容易,但是沒有內置功能可以可視化它。

最終,我設法了解了如何將梯度方向幅度存儲在3870個長HOG描述符向量中。

您可以在此處找到用於可視化HOGDescriptor C ++代碼:

http://www.juergenbrauer.org/old_wiki/doku.php?id=public:hog_descriptor_computation_and_visualization

希望能幫助到你!

於爾根

HOGgles¹是為HOG可視化開發的一種方法,已在ICCV 2013上發布。這是一個示例:

HOG看到了什么?

這種可視化工具可能比繪制HOG的梯度矢量更有用,因為可以更好地了解為什么給定樣本的HOG失敗。

可以在這里找到更多信息: http : //web.mit.edu/vondrick/ihog/


℃。 Vondrick,A。Khosla,T。Malisiewicz,A。Torralba。 “ HOGgles:對象檢測功能的可視化”,國際計算機視覺會議(ICCV),澳大利亞悉尼,2013年12月。

這個 opencv小組討論導致了布朗大學寫的一個圖書館

HOGpicture.m您應該能夠了解如何可視化描述符。 這是相關的(matlab)代碼。 您足以為自己做點什么嗎?

(以下代碼是根據MIT許可發布的)

function im = HOGpicture(w, bs)

% HOGpicture(w, bs)
% Make picture of positive HOG weights.

% construct a "glyph" for each orientation
bim1 = zeros(bs, bs);
bim1(:,round(bs/2):round(bs/2)+1) = 1;
bim = zeros([size(bim1) 9]);
bim(:,:,1) = bim1;
for i = 2:9,
  bim(:,:,i) = imrotate(bim1, -(i-1)*20, 'crop');
end

% make pictures of positive weights bs adding up weighted glyphs
s = size(w);    
w(w < 0) = 0;    
im = zeros(bs*s(1), bs*s(2));
for i = 1:s(1),
  iis = (i-1)*bs+1:i*bs;
  for j = 1:s(2),
    jjs = (j-1)*bs+1:j*bs;          
    for k = 1:9,
      im(iis,jjs) = im(iis,jjs) + bim(:,:,k) * w(i,j,k);
    end
  end
end

我為基於JürgenBrauer的任何blockSizecellSize重新實現HOGImage。 參見https://github.com/zhouzq-thu/HOGImage

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM