cv運算元之識別條形碼,將其做在相機一直拿圖程式裡面,看看效率以及延遲
測試zbar識別一幀影象215ms左右,優化zbar識別程式,減少它識別的類別,一幀影象 165ms左右
該程式基於qt寫的
ubuntu安裝zbar
sudo
apt-get
install libzbar-dev
.pro
libs += /usr/lib/x86_64-linux-gnu/libzbar.so.0.2.0
.cpp
#include
using namespace zbar;
#ifdef cvtool
qdatetime current_date_time = qdatetime::currentdatetime();
qstring start_time = current_date_time.tostring(
"yyyy.mm.dd hh:mm:ss.zzz");
qdebug(
)<<
"start_time:"
<< start_time << endl;
long long msec_time = qdatetime::currentdatetime(
).tomsecssinceepoch();
cv::mat grayimg;
//output_img是相機的原始影象
pyrdown(output_img,output_img)
; cvtcolor(output_img,grayimg,cv::color_bgr2gray)
; int cv_width = grayimg.cols;
int cv_height = grayimg.rows;
uchar *raw =
(uchar *)
(grayimg.data)
; image image( cv_width, cv_height, "y800", raw, cv_width*cv_height)
; imagescanner scanner;
scanner.set_config(zbar_none,zbar_cfg_enable,0)
; scanner.set_config(zbar_ean13,zbar_cfg_enable,1)
; scanner.scan((image))
; int counter =0;
int i=0;
for(image::symboliterator symbol = image.symbol_begin(
);symbol!=image.symbol_end(
);++symbol)
qdebug(
)<<
"processing speed:"
<< qdatetime::currentdatetime(
).tomsecssinceepoch(
) - msec_time <<
"ms"
<< endl;
#endif
python條碼識別
yolov3 tiny,可以用來標註,有預訓練 dbnet 有onnx模型,48m 經過多次調研,終於找到opencv版的條碼檢測,條碼識別 opencv 條形碼檢測 c 版 python版 安卓手機自動把螢幕調整到最亮,會有過曝情況,import cv2 import numpy as np im...
在OpenCV裡實現條碼識別
現在條碼這麼普及,對於條碼的識別,很多應用場合都需要使用。在這裡就介紹乙個比較小的條碼識別庫,它就是pyzbar,對於一般的條碼,它是能識別出來的,如果比較新的格式可能識別不了。可以使用下面的命令來安裝它 pip install i pyzbar 成功安裝之後,就可以用下面的 進行測試 python...
在C 中使用ZBar識別條形碼
一.識別庫 二.從一張中提取多個條形碼 三.注意事項 從學了很多,本著分享的目的,希望後來者遇到類似問題時,不必重複造輪子,早點下班回家 目前主流的識別庫主要有zxing.net和zbar,這裡我使用的是zbar,zxing.net也試過,同等條件下,識別率不高。很奇怪為什麼不能直接引用libzba...