敲敲級簡單的鑒別H圖片的小程序
首先,來看一下程序運行結果的截圖
功能實現
一、下載SDK
pip install qcloud_imagen
先貼出官方給的實例代碼:
#!/usr/bin/env pythonn# -*- coding: utf-8 -*-nfrom qcloud_image import Client, CIFilennappid = 填入你的 Appidnsecret_id = 填入你的 secret_idnsecret_key = 填入你的 secret_keynbucket = 填入你的 bucket 名稱nnclient = Client(appid, secret_id, secret_key, bucket)nclient.use_http()nclient.set_timeout(30)nnprint client.tag_detect(CIFile(./img/demo.jpg))n
appid這些都是要自己申請的哈。在TX雲的管理中心裡 登錄 - 騰訊雲。
二、拿到了官方給的案例,那我們就可以美滋滋的練手啦
# -*- coding: utf-8 -*-n"""nn__author__ = se7ennn__date__ = 17/5/10 下午5:55n"""nfrom qcloud_image import Client, CIFilesnimport osnnappid = 這裡要填自己申請的nsecret_id = 這裡要填自己申請的nsecret_key = 這裡要填自己申請的nbucket = 這裡寫自己創建的空間nnclient = Client(appid, secret_id, secret_key, bucket)nclient.use_http()nclient.set_timeout(30)nnndef check(func):n def _check(dir):n for filename in os.listdir(dir):n fname = filenamen filename = os.path.join(dir, filename)n filename = os.path.normcase(filename)n if os.path.splitext(fname)[-1] == .jpg: # 判斷後綴名n try:n # 這裡支持傳入多個需要鑒別的本地圖片地址n results = client.porn_detect(CIFiles([filename]))n for result in results[result_list]:n func(result, fname, result[data])n except:n print("不能打開文件 {fname} ".format(fname=fname))nn else:n print("{fname} 不是"jpg"文件".format(fname=fname))nn return _checknnn@checkndef checkPic(result, filename, data):n if result[message] == success: # 判斷是否請求成功n if data[porn_score] > 50: # 設置多少分為色情圖片n print filename + " 圖片涉嫌違規"n print "! 圖片為色情圖片評分:{porn_score}".format(porn_score=data[porn_score])n print "! 可信度:{confidence}".format(confidence=data[confidence])nn print """n n======nn ! 圖片 {filename} 可上傳n ! 性感值:{hot_score}n ! 圖片為色情圖片評分:{porn_score}n ! 可信度:{confidence}n n======nn """.format(filename=filename, hot_score=data[hot_score], porn_score=data[porn_score],n confidence=data[confidence])nn else:n print result[filename] + "圖片涉嫌違規,已刪除"nnnif __name__ == __main__:n checkPic(/Users/xxx/Desktop/test) #這裡寫路徑 ,windows的小夥伴要注意路徑格式哈。n
運行
激動的時刻到啦,我們要將測試圖片準備好喲!加上騷騷的顏色!
完美啦!
男生的還沒有測。。並不知道能不能檢測到。。如果有人成功檢測也和我說下喲。
聲明:核心功能都是人家寫好的介面喲,我就是調用啦~所以這個小程序簡單到不能再簡單了,正好適合我這樣的新手拿來玩玩。我是個新手,所以有哪些代碼寫的不合理的地方,請提出來,我好改正!最後,請讀客老爺們點個贊,么么噠!
博客地址:簡單一點
推薦閱讀: