樹莓派+普通usb攝像頭 做人臉識別
阿新 • • 發佈:2019-02-13
http://v.eepw.com.cn/video/play/id/14049 我是根據這個來做的,原始碼就在github上https://github.com/codelast/raspberry-pi。
1.刷系統以及安裝opencv: 我是參照視訊教程安裝了archlinuxarm。其實系統無所謂,用raspbian的安裝opencv請參照http://www.jb51.net/article/63103.html
2.把程式碼都下載到樹莓派裡面就可以拍照,錄視訊了。
3.人臉識別: 進行到人臉識別的時候卡住了。在樹莓派與face++伺服器通訊時(也就是程式碼中需要用到rapidjson ),所以就安裝咯。根據網上搜索後能快速安裝,https://code.google.com/archive/p/rapidjson/wikis/UserGuide.wiki 一開始我是下載了Google code裡面的庫檔案,然後按照
1.2. Installation
rapidjson is a header-only library. That means, the only thing to be done is to copy rapidjson/include/rapidjson
and its
sub-directories to your project or other include paths.
#find / -name stdio.h
然後編譯////get-image-face-ids
結果出現以下rapidjson問題:./compile-and-run.sh
error: no matching function for call to 'rapidjson::GenericDocument<rapidjson::UTF8<> >::Parse(const char*)' if (document.Parse(retData.c_str()).HasParseError()) {
error: ambiguous overload for 'operator[]' (operand types are 'const Value {aka const rapidjson::GenericValue<rapidjson::UTF8<> >}' and 'int') cout << faces[0]["face_id"].GetString() << endl;
上面說到的兩個error ,就是rapidjson庫檔案過舊的問題 。下圖google code上的說明。去github上下載新的庫檔案程式碼就沒問題了END