一篇文章教會你使用Python圖片格式轉換器并識別圖片中的文字
回復“書籍”即可獲贈Python從入門到進階共10本電子書
在日常生活中,我們經(jīng)常需要用到圖片,我們都知道,圖片的種類挺多的,在這里不一一列舉。
我們今天要完成就是一個圖片轉換器外加圖片識別程序,廢話不多說,直接就是淦!
1.文字識別技術
2.圖片轉換器
一、文字識別技術
首先介紹文字識別技術,就是讀取圖片之后然后把圖片中的文字提取出來。
1.打開百度開放平臺

進去之后咱們選擇文字識別,可以看出,語音合成和圖片識別的參數(shù)不一樣,所以不要搞混了,不過他們用的Python模塊是一樣的,這個可以放心使用。

談到文字識別,大致可分為本地文件文字識別和網(wǎng)絡文件文字識別,識別率還算挺高的,他的用法與語音合成有很多相似之處,當然也有很多不同,例如:
from aip import AipOcr""" 你的 APPID AK SK """APP_ID = '你的 App ID'API_KEY = '你的 Api Key'SECRET_KEY = '你的 Secret Key'client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
首先是使用的模塊不同,其次參數(shù)也不同,可以看出來第一步配置就是這么簡單。
然后我們需要對本地文件進行一個識別,例如:

可以看出來,這些就是識別后圖片上的內(nèi)容,識別效果很好,非常完美。
文字識別——請求參數(shù)詳情
| 參數(shù)名稱 | 是否必選 | 類型 | 可選值范圍 | 默認值 | 說明 |
|---|---|---|---|---|---|
| image | 是 | string | 圖像數(shù)據(jù),base64編碼,要求base64編碼后大小不超過4M,最短邊至少15px,最長邊最大4096px,支持jpg/png/bmp格式 | ||
| url | 是 | string | 圖片完整URL,URL長度不超過1024字節(jié),URL對應的圖片base64編碼后大小不超過4M,最短邊至少15px,最長邊最大4096px,支持jpg/png/bmp格式,當image字段存在時url字段失效 | ||
| language_type | 否 | string | CHN_ENG ENG POR FRE GER ITA SPA RUS JAP KOR | CHN_ENG | 識別語言類型,默認為CHN_ENG。可選值包括:- CHN_ENG:中英文混合;- ENG:英文;- POR:葡萄牙語;- FRE:法語;- GER:德語;- ITA:意大利語;- SPA:西班牙語;- RUS:俄語;- JAP:日語;- KOR:韓語; |
| detect_direction | 否 | string | true false | false | 是否檢測圖像朝向,默認不檢測,即:false。朝向是指輸入圖像是正常方向、逆時針旋轉90/180/270度。可選值包括: - true:檢測朝向;- false:不檢測朝向。 |
| detect_language | 否 | string | true false | false | 是否檢測語言,默認不檢測。當前支持(中文、英語、日語、韓語) |
| probability | 否 | string | true false | 是否返回識別結果中每一行的置信度 |
文字識別——返回數(shù)據(jù)參數(shù)詳情
| 字段 | 必選 | 類型 | 說明 |
|---|---|---|---|
| direction | 否 | number | 圖像方向,當detect_direction=true時存在。- -1:未定義, - 0:正向, - 1: 逆時針90度, - 2:逆時針180度, - 3:逆時針270度 |
| log_id | 是 | number | 唯一的log id,用于問題定位 |
| words_result_num | 是 | number | 識別結果數(shù),表示words_result的元素個數(shù) |
| words_result | 是 | array | 定位和識別結果數(shù)組 |
| +words | 否 | string | 識別結果字符串 |
| probability | 否 | object | 行置信度信息;如果輸入?yún)?shù) probability = true 則輸出 |
| +average | 否 | number | 行置信度平均值 |
| +variance | 否 | number | 行置信度方差 |
| +min | 否 | number | 行置信度最小值 |
可以看出這個API還是相當不錯了,下面我們聊一下圖片格式轉換器,
二、圖片格式轉換器
圖片格式轉換器,顧名思義就是將圖片格式互相轉換,很多人為了方便都是直接改后綴名,殊不知那樣圖盤的原始樣式會受到影響,也許圖片會打開后從產(chǎn)生錯誤的畫面。下面我們就來做一個類似的案例。
1.先安裝圖片處理模塊 pillow ,安裝方法 :
pip install pillow
2.導入pillow
from PIL import Image
3.判斷文件是否可以打開
from PIL import Imagedef isbad(path):bad = Truetry:Image.open(path).verify() #判斷圖片是否損壞except:bad= Falsereturn bad
4.轉換文件格式
def translate(path):if isbad(path):try:str = path.rsplit(".", 1)output_path = str[0] + ".png" #輸出文件名稱im = Image.open(path)im.save(output_path) #保存目標文件return Trueexcept:return Falseelse:return False
這樣我們就得到了一張完整的可用的png圖片了,代碼如圖:

本項目用于平時上傳文件識別圖片所用,效果還是蠻不錯的,希望大家喜歡。
最后想學習更多關于Python的知識,可以參考學習網(wǎng)址:http://pdcfighting.com/,點擊閱讀原文,可以直達噢~
------------------- End -------------------
往期精彩文章推薦:
歡迎大家點贊,留言,轉發(fā),轉載,感謝大家的相伴與支持
想加入Python學習群請在后臺回復【入群】
萬水千山總是情,點個【在看】行不行
/今日留言主題/
隨便說一兩句吧~~
