推薦一個(gè)答題卡識別系統(tǒng)(SpringMvc + OpenCV)
java_opencv
項(xiàng)目介紹
OpenCV是一個(gè)基于BSD許可(開源)發(fā)行的跨平臺計(jì)算機(jī)視覺庫,它提供了一系列圖像處理和計(jì)算機(jī)視覺方面很多通用算法。是研究圖像處理技術(shù)的一個(gè)很不錯(cuò)的工具。最初開始接觸是2016年因?yàn)楣卷?xiàng)目需要,但是當(dāng)時(shí)網(wǎng)上可供參考的demo實(shí)在太少了,而且基本上都是基于C、C++實(shí)現(xiàn)的。
也就是從2017年開始,關(guān)于java+opencv的資料才漸漸多起來。處于這種情況,就想搭建一個(gè)有助于我們學(xué)習(xí)和了解opencv的一個(gè)平臺。因此就有了這個(gè)系統(tǒng)。
從安裝開始,和大家一起學(xué)習(xí)記錄OpenCV的相關(guān)知識,直至最終一個(gè)簡單但完整DEMO的實(shí)現(xiàn)(答題卡識別)。
軟件架構(gòu)
SpringMVC+AdminLTE 2+maven。考慮到之前demo測試,要么都是生成圖片查看效果,要么用swing繪制,遇到參數(shù)變化的時(shí)候,不便于調(diào)試,于是就做成了大家熟悉的web模式。后臺是基于SpringMVC,也沒有數(shù)據(jù)庫交互,就是個(gè)頁面操作效果實(shí)時(shí)查看的功能,現(xiàn)在很簡單。前端使用的是AdminLTE 2,一個(gè)基于 bootstrap 的輕量級后臺模板。
安裝教程
下載項(xiàng)目maven更新 執(zhí)行readme中需要的本地maven依賴jar 如果需要使用tesseract方式識別頁碼,注意tessdata放到tomcat的bin目錄下 參照項(xiàng)目中JAVA集成OpenCV,配置linux或windows環(huán)境Linux下配置OpenCVWindows下配置OpenCV 數(shù)據(jù)庫配置目前用不到,可以直接去掉spring-context.xml中關(guān)于數(shù)據(jù)源的配置,也可以隨便指定個(gè)連接數(shù)據(jù)庫地址 有的小伙伴@武 在tomcat啟動項(xiàng)目調(diào)用時(shí)會出現(xiàn)UnstatisfiedLinkError:no opencv_java2413 in java.library.path 異常信息,可以通過輸出System.out.println(System.getProperty("java.library.path"));打印一下本地的library地址。將dll文件放到輸出的地址中,如jdk的bin目錄下;tomcat的bin目錄等,重啟tomcat就可以解決該問題。
演示地址
demo演示:
https://ocr.biecuihun.com/java_opencv
主要內(nèi)容
圖像二值化 圖像自適用二值化 高斯模糊 圖片縮放 腐蝕膨脹 進(jìn)階形態(tài)學(xué)變換 邊緣檢測 檢測直線 檢測圓 檢測顏色 輪廓識別 模板查找 繪制灰度直方圖 答題卡識別demo 圖像矯正(透視變換)
系統(tǒng)效果



開源項(xiàng)目源碼:
https://gitee.com/songer/java_opencv
評論
圖片
表情
