目錄
- 前言
- 總體設計
- 系統整體結構圖
- 系統流程圖
- 運行環境
- 爬蟲
- 1.安裝Anaconda
- 2.安裝Python3.6
- 3.更換pip源
- 4.安裝Python包
- 5.下載phantomjs
- 模型訓練
- 1.安裝依賴
- 2.安裝lmageAl
- 實際應用
- 1.前端
- 2.安裝Flask
- 3.安裝Nginx
- 相關其它博客
- 工程源代碼下載
- 其它資料下載
前言
本項目通過爬蟲技術獲取圖片,利用OpenCV庫對圖像進行處理,識別并切割出人物臉部,形成了一個用于訓練的數據集。通過ImageAI進行訓練,最終實現了對動漫人物的識別模型。同時,本項目還開發了一個線上Web應用,使得用戶可以方便地體驗和使用該模型。
首先,項目使用爬蟲技術從網絡上獲取圖片。這些圖片包含各種動漫人物,其中我們只對人物臉部進行訓練,所以我們會對圖像進行處理,并最終將這些圖像將作為訓練數據的來源。
其次,利用OpenCV庫對這些圖像進行處理,包括人臉檢測、圖像增強等步驟,以便準確識別并切割出人物臉部。這一步是為了構建一個清晰而準確的數據集,用于模型的訓練。
接下來,通過ImageAI進行訓練。ImageAI是一個簡化圖像識別任務的庫,它可以方便地用于訓練模型,這里用于訓練動漫人物的識別模型。
最終,通過項目開發的線上Web應用,用戶可以上傳動漫圖像,系統將使用訓練好的模型識別圖像中的動漫人物,并返回相應的結果。
總的來說,本項目結合了爬蟲、圖像處理、深度學習和Web開發技術,旨在提供一個便捷的動漫人物識別服務。這對于動漫愛好者、社交媒體平臺等有著廣泛的應用前景。
總體設計
本部分包括系統整體結構圖和系統流程圖。
系統整體結構圖
系統整體結構如圖所示。
系統流程圖
系統流程如圖所示。
運行環境
本部分包括爬蟲、模型訓練及實際應用運行環境。
爬蟲
安裝Python3.6以上及Selenium3.0.2版本。
1.安裝Anaconda
使用Anaconda管理Python環境。在Windows環境下載Anaconda完成安裝,下載地址為https://www.anaconda.com/。
驗證安裝。單擊菜單【開始】→Anaconda3(64-bit)→Anaconda Navigator,若可以成功啟動Anaconda Navigator則說明安裝成功。
2.安裝Python3.6
打開計算機的cmd命令行窗口,新建Python3.6環境,名稱為TensorFlow:
conda create --name tensorflow python=3.6
激活環境:
conda activate tensorflow
3.更換pip源
由于網絡問題,需要更換Python包管理工具pip的下載源來提高下載速度。按Win+R
組合鍵打開用戶目錄%HOMEPATH%
,在此目錄下創建pip文件夾以及pip.ini
文件,成功更換pip的源為清華鏡像。內容如下:
[global]
timeout = 60000
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
trusted-host = pypi.tuna.tsinghua.edu.cn
4.安裝Python包
新建一個.txt
文件并命名為crawler_requirements.txt
,寫入如下內容:
future==0.16.0
futures==3.0.5
requests==2.12.1
selenium==3.0.2
在啟動的Python環境cmd窗口輸入:
pip install -r crawler_requirements.txt
即可安裝爬蟲所需要的包。
5.下載phantomjs
Selenium是用于Web應用程序測試的工具,其測試直接在瀏覽器中運行,需要使用phantomjs。在Linux環境下的phantomjs是完整的,可以直接使用pip安裝使用,但是在Windows環境下需要下載phantomjs.exe
文件來引用。新建bin文件夾用于存儲phantomjs.exe
可執行文件。
官網下載地址:https://phantomjs.org/download.html
模型訓練
本部分包括安裝依賴、安裝ImageAI。
1.安裝依賴
TensorFlow 1.4.0(及更高版本)安裝或通過pip安裝:
pip3 install -- upgrade tensorflow
Numpy1.13.1(及更高版本)安裝或通過pip安裝:
pip3 install numpy
SciPy0.19.1(及更高版本)安裝或通過pip安裝:
pip3 install scipy
OpenCV安裝或通過pip安裝:
pip3 install opencv - python
pillow安裝或通過pip安裝:
pip3 install pillow
Matplotlib安裝或通過pip安裝:
pip3 install matplotlib
h5py安裝或通過pip安裝:
pip3 install h5py
Keras2.x安裝或通過pip安裝:
pip3 install keras
2.安裝lmageAl
可以直接通過下面命令安裝ImageAI:
pip3 install imageai
也可以先下載imageai-2.0.1-py3-none-any.whl
。
下載地址為https://github.com/OlafenwaMoses/ImageAI/releases/download/2.0.1/imageai-2.0.1-py3-none-any.whl
然后在下載目錄下,運行如下命令安裝ImageAI:
pip3 install imageai-2.0.1-py3-none-any.whl
實際應用
實際應用包括前端開發環境和后端環境的搭建。
1.前端
實際應用過程中需要在官網下載Jquery3.5.0.js
、bootstrap 4.4.1.js
和template.js0.8.0.js
等3個文件。
2.安裝Flask
通過ask1.1.2接收和發送用戶請求,使用pip直接安裝:
pip install -y Flask
3.安裝Nginx
本地開發完成后,需要在服務器端運行。配置服務器端的環境為Nginx,Nginx(enginex),是高性能的HTTP和運行代理Web服務器,同時也提供了IMAP/POP3/SMTP服務。Nginx負責接收和轉發用戶請求,同時保證服務器端的負載均衡。
安裝Nginx。選擇穩定版本:服務器端的Linux環境為CentOS 6.2x86_64
。使用Linux下包管理工具yum安裝缺少的依賴包:
# yum -y install gcc gcc-c++make libtoolzlib zlib zlib-devel openssl openssl-devel pcre pcre-devel
如果yum上沒有這些軟件包,可以下載源碼編譯安裝,編譯時默認安裝的目錄,確保在安裝Nginx時找到動態庫文件。從網站http://nginx.org/en/download.html下載穩定版nginx-1.6.3.tar.gz
到/usr/local/src下解壓。
另外下載2個插件模塊——nginx_upstream_check_module-0.3.0.tar.gz
和 nginx-goodies-nginx-sticky-module-ng-bd312d586752.tar.gz
(建議在/usr/local/src下解壓后將目錄重命名為nginx-sticky-module-ng-1.2.5
),前者用于檢查后端服務器的狀態,后者用于后端做負載均衡解決報錯(sessions ticky問題)。注意插件與Nginx的版本兼容問題,一般插件越新越好,Nginx則無須追求最新的版本。
啟動Nginx服務,命令如下:
systemctl start nginx
修改Nginx的配置文件。
打開/etc/nginx/nginx.conf
文件,修改server部分。相關代碼如下:
server {#監聽端口listen 80;#訪問城名server_name localhost;#編碼格式,若網頁格式與此不同,將被自動轉碼#charset koi8#虛擬主機訪問日志定義#access_log logs/host.access.log main;#對URL進行匹配location / {#訪問路徑,可以是相對路徑也可以是絕對路徑root html;#首頁文件,以下按順序匹配index l index.htm;}
}
本項目在阿里云的控制臺開放服務器端口才能被用戶訪問,Nginx服務器默認為80端口。
相關其它博客
基于opencv+ImageAI+tensorflow的智能動漫人物識別系統——深度學習算法應用(含python、JS、模型源碼)+數據集(二)
基于opencv+ImageAI+tensorflow的智能動漫人物識別系統——深度學習算法應用(含python、JS、模型源碼)+數據集(三)
基于opencv+ImageAI+tensorflow的智能動漫人物識別系統——深度學習算法應用(含python、JS、模型源碼)+數據集(四)
工程源代碼下載
詳見本人博客資源下載頁
其它資料下載
如果大家想繼續了解人工智能相關學習路線和知識體系,歡迎大家翻閱我的另外一篇博客《重磅 | 完備的人工智能AI 學習——基礎知識學習路線,所有資料免關注免套路直接網盤下載》
這篇博客參考了Github知名開源平臺,AI技術平臺以及相關領域專家:Datawhale,ApacheCN,AI有道和黃海廣博士等約有近100G相關資料,希望能幫助到所有小伙伴們。