欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用python實現男神女神顏值打分系統(推薦)

 更新時間:2019年10月31日 10:37:17   作者:Keegan-揚  
這篇文章主要介紹了用python做一個男神女神顏值打分系統(程序分析見注釋),需要的朋友可以參考下

先給大家展示效果圖,感覺不錯,請參考實現代碼。


在這里插入圖片描述

具體代碼如下所示:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
pip install pillow
pip install baidu-aip
pip install tkinter
"""
import PIL
import time
import base64
import tkinter as tk
from PIL import Image
from PIL import ImageTk
from aip import AipFace
from tkinter.filedialog import askopenfilename
# 配置百度aip參數
APP_ID = '15768642'
API_KEY = 'xhiiGmGPRCRj10XIqVlVeCky'
SECRET_KEY = 'ZDMMAO7StwTKzW8BspVQxvoGtdgSW4yI'
a_face = AipFace(APP_ID, API_KEY, SECRET_KEY)
image_type = 'BASE64'
options = {'face_field': 'age,gender,beauty'}
def get_file_content(file_path):
  """獲取文件內容"""
  with open(file_path, 'rb') as fr:
    content = base64.b64encode(fr.read())
    return content.decode('utf8')
def face_score(file_path):
  """臉部識別分數"""
  result = a_face.detect(get_file_content(file_path), image_type, options)
  print(result)
  age = result['result']['face_list'][0]['age']
  beauty = result['result']['face_list'][0]['beauty']
  gender = result['result']['face_list'][0]['gender']['type']
  return age, beauty, gender
class ScoreSystem():
  """打分系統類"""
  root = tk.Tk()
  # 修改程序框的大小
  root.geometry('800x500')
  # 添加程序框標題
  root.title('女神/男神顏值打分系統')
  # 修改背景色
  canvas = tk.Canvas(root,
            width=800, # 指定Canvas組件的寬度
            height=500, # 指定Canvas組件的高度
            bg='#E6E6FA') # 指定Canvas組件的背景色
  canvas.pack()
  def start_interface(self):
    """主運行函數"""
    self.title()
    self.time_component()
    # 打開本地文件
    tk.Button(self.root, text='打開文件', command=self.show_original_pic).place(x=50, y=150)
    # 進行顏值評分
    tk.Button(self.root, text='運行程序', command=self.open_files2).place(x=50, y=230)
    # 顯示幫助文檔
    tk.Button(self.root, text='幫助文檔', command=self.show_help).place(x=50, y=310)
    # 退出系統
    tk.Button(self.root, text='退出軟件', command=self.quit).place(x=50, y=390)
    # 顯示圖框標題
    tk.Label(self.root, text='原圖', font=10).place(x=380, y=120)
    # 修改圖片大小
    self.label_img_original = tk.Label(self.root)
    # 設置顯示圖框背景
    self.cv_orinial = tk.Canvas(self.root, bg='white', width=270, height=270)
    # 設置顯示圖框邊框
    self.cv_orinial.create_rectangle(8, 8, 260, 260, width=1, outline='red')
    # 設置位置
    self.cv_orinial.place(x=265, y=150)
    # 顯示圖片位置
    self.label_img_original.place(x=265, y=150)
    # 設置評分標簽
    tk.Label(self.root, text='性別', font=10).place(x=680, y=150)
    self.text1 = tk.Text(self.root, width=10, height=2)
    tk.Label(self.root, text='年齡', font=10).place(x=680, y=250)
    self.text2 = tk.Text(self.root, width=10, height=2)
    tk.Label(self.root, text='評分', font=10).place(x=680, y=350)
    self.text3 = tk.Text(self.root, width=10, height=2)
    # 填裝文字
    self.text1.place(x=680, y=175)
    self.text2.place(x=680, y=285)
    self.text3.place(x=680, y=385)
    # 開啟循環(huán)
    self.root.mainloop()
  def show_original_pic(self):
    """放入文件"""
    self.path_ = askopenfilename(title='選擇文件')
    # 處理文件
    img = Image.open(fr'{self.path_}')
    img = img.resize((270, 270), PIL.Image.ANTIALIAS) # 調整圖片大小至270*270
    # 生成tkinter圖片對象
    img_png_original = ImageTk.PhotoImage(img)
    # 設置圖片對象
    self.label_img_original.config(image=img_png_original)
    self.label_img_original.image = img_png_original
    self.cv_orinial.create_image(5, 5, anchor='nw', image=img_png_original)
  def open_files2(self):
    # 獲取百度API接口獲得的年齡、分數、性別
    age, score, gender = face_score(self.path_)
    # 清楚text文本框內容并進行插入
    self.text1.delete(1.0, tk.END)
    self.text1.tag_config('red', foreground='RED')
    self.text1.insert(tk.END, gender, 'red')
    self.text2.delete(1.0, tk.END)
    self.text2.tag_config('red', foreground='RED')
    self.text2.insert(tk.END, age, 'red')
    self.text3.delete(1.0, tk.END)
    self.text3.tag_config('red', foreground='RED')
    self.text3.insert(tk.END, score, 'red')
  def show_help(self):
    """顯示幫助"""
    pass
  def quit(self):
    """退出"""
    self.root.quit()
  def get_time(self, lb):
    """獲取時間"""
    time_str = time.strftime("%Y-%m-%d %H:%M:%S") # 獲取當前的時間并轉化為字符串
    lb.configure(text=time_str) # 重新設置標簽文本
    self.root.after(1000, self.get_time, lb) # 每隔1s調用函數 get_time自身獲取時間
  def time_component(self):
    """時間組件"""
    lb = tk.Label(self.root, text='', fg='blue', font=("黑體", 15))
    lb.place(relx=0.75, rely=0.90)
    self.get_time(lb)
  def title(self):
    """標題設計"""
    lb = tk.Label(self.root, text='女神/男神顏值打分系統',
           bg='#6495ED',
           fg='lightpink', font=('華文新魏', 32),
           width=20,
           height=2,
           # relief=tk.SUNKEN
           )
    lb.place(x=200, y=10)
score_system = ScoreSystem()
score_system.start_interface()

總結

以上所述是小編給大家介紹的使用python實現男神女神顏值打分系統,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

相關文章

  • python作圖基礎之plt.contour實例詳解

    python作圖基礎之plt.contour實例詳解

    contour和contourf都是畫三維等高線圖的,下面這篇文章主要給大家介紹了關于python作圖基礎操作之plt.contour的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-06-06
  • 使用Python下載歌詞并嵌入歌曲文件中的實現代碼

    使用Python下載歌詞并嵌入歌曲文件中的實現代碼

    這篇文章主要介紹了使用Python下載歌詞并嵌入歌曲文件中的實現代碼,需要借助eyed3模塊,需要的朋友可以參考下
    2015-11-11
  • python監(jiān)控文件并且發(fā)送告警郵件

    python監(jiān)控文件并且發(fā)送告警郵件

    這篇文章主要為大家詳細介紹了python監(jiān)控文件,并且發(fā)送告警郵件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Python qrcode 生成一個二維碼的實例詳解

    Python qrcode 生成一個二維碼的實例詳解

    在本篇文章里小編給大家整理的是關于Python qrcode 生成一個二維碼的實例內容,需要的朋友們可以學習參考下。
    2020-02-02
  • 關于使用python對mongo多線程更新數據

    關于使用python對mongo多線程更新數據

    這篇文章主要介紹了關于使用python對mongo多線程更新數據,文中提供了詳細的代碼說明,實際使用時,需要根據具體情況進行調整和優(yōu)化,需要的朋友可以參考下
    2023-04-04
  • Python數據傳輸黏包問題

    Python數據傳輸黏包問題

    這篇文章主要介紹了Python數據傳輸黏包問題,黏包指數據與數據之間沒有明確的分界線,導致不能正確的讀取數據,更多相關內容需要的小伙伴可以參考一下
    2022-04-04
  • pycharm創(chuàng)建一個python包方法圖解

    pycharm創(chuàng)建一個python包方法圖解

    在本篇文章中小編給大家分享了關于pycharm怎么創(chuàng)建一個python包的相關知識點,需要的朋友們學習下。
    2019-04-04
  • 對python讀取CT醫(yī)學圖像的實例詳解

    對python讀取CT醫(yī)學圖像的實例詳解

    今天小編就為大家分享一篇對python讀取CT醫(yī)學圖像的實例詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python去除html標簽的幾種方法總結

    Python去除html標簽的幾種方法總結

    這篇文章主要介紹了Python去除html標簽的幾種方法總結,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • 手把手教你如何使python變?yōu)榭蓤?zhí)行文件

    手把手教你如何使python變?yōu)榭蓤?zhí)行文件

    對于exe可執(zhí)行文件,相信大家都不陌生,下面這篇文章主要給大家介紹了關于如何使python變?yōu)榭蓤?zhí)行文件的相關資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-02-02

最新評論