簡體   English   中英

OpenCV HOG描述符OCR

[英]OpenCV HOGDescriptor OCR

我正在將digits.py轉換為來自OpenCV的c ++示例。 Digits.py位於python2示例文件夾下。 它是使用SVM識別字符的應用程序。

在預處理步驟中,HOG(計算梯度的直方圖)。 為了使用C ++做到這一點,使用cv :: HOGDescriptor :: compute()為每個圖像倉獲取HOG值更為方便。

https://github.com/Itseez/opencv/blob/5f590ebed084a5002c9013e11c519dcb139d47e9/samples/python2/digits.py

126行。

在python中,他們使用了Hellinger內核,該內核可改善樣本辨別力。 但是,我看不到在compute()下的HOG.cpp中發生這種情況。

https://github.com/Itseez/opencv/blob/5f590ebed084a5002c9013e11c519dcb139d47e9/modules/objdetect/src/hog.cpp

我們如何將其應用於從cv :: HOGDescriptor.compute恢復的cv :: Mat?

為什么不嘗試與python示例相同的東西?

Mat img = ...
Mat descr;
hog.compute(img, descr, ...);

float eps = 1e-7f;
descr /= sum(descr)[0] + eps; // same as: normalize(descr,descr,1,eps,NORM_L1);
sqrt(descr,descr);
descr /= norm(descr) + eps;  

// ... feed to svm

暫無
暫無

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

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