最近公司安排學習python,同時研究一下深度學習,人工智能識別,最後的目的就是實現利用機器學習自動完成影像的對別,識別房屋,自動生成地形圖等。總之走在時尚最前沿了,說幹就幹,但是入門的路上坑真的太多,寫在這裏算是提醒,總結,也可以作爲後的某一天的回味吧。
首先感謝一下我的領導,提供了學習環境和機會,感激。
一、利用軟件Tesseract-OCR和 模塊pytesseract,PIL實現對圖片中文字進行識別,程序代碼很簡單:
from PIL import Image
import pytesseract
#text = pytesseract.image_to_string(Image.open("1.jpg"),lang="chi_sim")
image = Image.open("1.jpg")
text = pytesseract.image_to_string(image,lang="chi_sim")
print(text)
軟件安裝注意的就是tess中要設置中文,然後是環境變量,環境變量真的重要,現在才明白控制檯爲什麼
都不執行相關的命令了,環境變量path中添加,然後 ;隔開輸入軟件的安裝路徑。
其實安裝都可以利用pip,只是貌似pil這個版本有問題吧,單獨下載安裝,至於pytesseract則需要打開.py改動裏面的文件路徑,最後輸入圖片就可以識別了。
二、其實上面的都是走了彎路,包括接觸TensorFlow的安裝也走了一些彎路,不過最後還是能用。
TensorFlow的安裝方式很多,要有兩個軟件protocol buffer和bazel。安裝一開始使用docker,費盡周折,不過這個軟件可以留着使用了。然後用pip安裝 直接輸入:
pip install tensorflow
安裝完畢,環境沒配置好,也許是方法太複雜,越複雜越容易出問題。
TensorFlow使用
首先是載入
import tensorflow as tf #使用tf代替模塊名稱
graph (圖表) 查看計算圖 創建計算圖
tf.get_default_graph 獲取計算圖
創建計算圖
g1 = tf.graph
with g1.as_default():#定義g1中的變量V
v = tf.get_variable(
"v",initializer = tf.zeros_initializer(shape=[1]))#初始化值爲0
#讀取
with tf.Session(graph=g1) as sess:
tf.initializer_all_variable().run()
with tf.variable_scope("",reuse=ture) :
print(sess.run(tf.get_variable("v")))