好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > 用Python給圖像算法做個簡單應用界面

用Python給圖像算法做個簡單應用界面

熱門標簽:幫人做地圖標注收費算詐騙嗎 荊州云電銷機器人供應商 溫州旅游地圖標注 江蘇房產電銷機器人廠家 外呼不封號系統 電信營業廳400電話申請 遼寧400電話辦理多少錢 悟空智電銷機器人6 蘇州電銷機器人十大排行榜

以前在Windows上做界面用MFC,現在做算法都是基于Python,所以轉用Python的Tkinter庫來做。主要是能使用Opencv和Torch處理數據,然后在界面上顯示。

效果如下:

主要包括3個板塊,其余還有一些小功能:

1、顯示固定的圖片。或從電腦加載一張圖片并顯示(涉及到按鈕的響應函數編寫和彈窗)

2、下拉框和文本框的使用

3、進度條的使用(涉及到多線程)

Tkinter支持控件自動調整布局,但是時間比較趕就不研究了,使用固定位置布局,界面也不給調整。

控件名稱

  • Buttom 按鈕,軟件交互功能實現
  • Label (叫什么不重要),用來顯示圖片或文字
  • ComboBox 下拉框,做選擇
  • Entry 文本框,做文本輸入
  • Progressbar 進度條,算法跑起來之后顯示進度
  • LabelFrame (...),灰色的框框,模塊化布局控件

代碼如下:

import tkinter as tk
import tkinter.ttk as ttk
import tkinter.messagebox
import tkinter.filedialog
import cv2 as cv
from PIL import Image, ImageTk
import time
import threading
 
RELIEF=['flat', 'raised', 'sunken', 'solid', 'ridge', 'groove']
CURSOR=['arrow','circle','clock','cross','dotbox','exchange',
        'fleur','heart','man','mouse','pirate','plus',
        'shuttle','sizing','spider','spraycan','star','target',
        'tcross','trek','watch']
 
def PIL2CV(im):
    im = im[:, :, ::-1]
    return ImageTk.PhotoImage(Image.fromarray(im))
 
def Buttom1_CallBack():
    filename = tk.filedialog.askopenfilename() #彈出文件選擇對話框
    if filename=='': #用戶沒有選擇任何文件
        return
    new_img = cv.imread(filename)
    if new_img is None:
        tk.messagebox.showerror('抱歉', '圖片加載失敗!')
        return
    new_img = cv.resize(new_img, (130, 120))
    new_img = PIL2CV(new_img)
    #后面兩句實現圖片切換顯示
    Label2.configure(image=new_img, width=130, height=120)
    Label2.image = new_img
    tk.messagebox.showinfo('提示','加載圖片完成!')
 
def Buttom2_CallBack():
    info = Combobox1.get()
    param = Entry1.get()
    tk.messagebox.showwarning('警告', '你選擇了:'+info+' '+param)
 
def process_code(delay):
    for i in range(100):
        Progressbar1['value'] = i+1
        root.update()
        time.sleep(delay)
    Buttom3.configure(text='開始處理', state='normal')
    tk.messagebox.showinfo('提示', '處理完成!')
    Progressbar1.configure(value=0)
 
def Buttom3_CallBack():
    yn = tk.messagebox.askyesno('警告','是否需要開始處理?')
    if not yn:
        return
 
    Buttom3.configure(text='處理中...', state='disabled') #控件失效
    delay = 0.01
 
    # 單獨開一個線程,綁定線程函數process_code,參數后面的','很關鍵
    # 不開線程界面會進入處理函數死循環,用戶體驗不太好
    t = threading.Thread(target=process_code, args=(delay,))
    t.start()
 
def Buttom4_CallBack():
    global page_count
    if page_count=0:
        page_count = 0
        return
    else:
        page_count -= 1
        Label4.configure(text='第'+str(page_count)+'頁')
    return
 
def Buttom5_CallBack():
    global page_count
    if page_count>=100:
        page_count = 100
        return
    else:
        page_count += 1
        Label4.configure(text='第' + str(page_count) + '頁')
    return
 
#上面是控件的響應函數
################################################################################
#下面是界面控件的布局
 
#主界面
root = tk.Tk()
root.title('python界面測試') #修改界面標題
root.iconbitmap('img/tm.ico') #修改界面ico
root.geometry('800x500') #設定界面尺寸 HxW
root.resizable(width=False, height=False) #不允許調整窗口大小,不固定刪除此行
 
#添加兩個板塊邊界框
Frame1 = tk.LabelFrame(root, height=200, width=145)
Frame1.place(x=15, y=100)
Frame2 = tk.LabelFrame(root, text="結果顯示", height=400, width=620)
Frame2.place(x=170, y=5)
 
#添加圖片顯示框、加載圖片框、加載圖片按鈕
img = cv.imread('img/title.jpg') #opencv加載圖片
img = cv.resize(img, (140,70)) #圖片縮放
img = PIL2CV(img) #opencv格式轉pillow
Label1 = tk.Label(root, image=img) #初始化默認圖片
Label1.place(x=15, y=20) #圖片顯示框在界面上的位置
 
Label2 = tk.Label(root,
                  width=18,height=7, #控件大小(注意單位不是像素)
                  bg="white") #默認白色背景
Label2.place(x=20,y=110) #圖片顯示框在界面上的位置
 
Buttom1 = tk.Button(root,
                    width=15,height=1, #按鈕大小
                    text='加載檢索圖片', #按鈕文本
                    relief=RELIEF[3], #按鈕的風格
                    command=Buttom1_CallBack) #綁定響應函數
Buttom1.place(x=25, y=250) #按鈕在界面上的位置
 
#添加參數文本框、下拉框、下拉框內容輸出按鈕
Combobox1 = ttk.Combobox(root, width=17, height=1)
Combobox1['value'] = ('窗前明月光','疑是地上霜','舉頭望明月','明月照我影')
Combobox1.current(0)
Combobox1.place(x=15, y=320)
 
Label3 = tk.Label(root, text='參數')
Label3.place(x=15, y=350)
 
Entry1 = ttk.Entry(root, width=9) #文本框為啥沒有H
Entry1.place(x=50, y=350)
Entry1.insert(0,'0.5')
 
Buttom2 = tk.Button(root,
                    width=15,height=1,
                    text='你選擇了什么?',
                    relief=RELIEF[3],
                    command=Buttom2_CallBack)
Buttom2.place(x=25, y=380)
 
#添加進度條、開始處理按鈕
Progressbar1 = ttk.Progressbar(root, length=600, value=0, cursor=CURSOR[1])
Progressbar1.place(x=15, y=460)
 
Buttom3 = tk.Button(root,
                    width=15,height=1,
                    text='開始處理',
                    relief=RELIEF[3],
                    command=Buttom3_CallBack)
Buttom3.place(x=630, y=455)
 
#添加兩個滾動按鈕
Buttom4 = tk.Button(root,
                    width=3,height=1,
                    text='',
                    relief=RELIEF[1],
                    command=Buttom4_CallBack)
Buttom4.place(x=380, y=410)
 
global page_count #全局變量,用來控制頁碼
page_count=0
Label4 = tk.Label(root, text='第0頁')
Label4.place(x=420, y=410)
 
Buttom5 = tk.Button(root,
                    width=3,height=1,
                    text='>',
                    relief=RELIEF[1],
                    command=Buttom5_CallBack)
Buttom5.place(x=470, y=410)
 
root.mainloop()
#這句話后面不能有代碼

以上就是用Python給圖像算法做個簡單應用界面的詳細內容,更多關于python 應用界面的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • Python猜數字算法題詳解
  • python算法題 鏈表反轉詳解
  • 一道python走迷宮算法題
  • python實現dbscan算法
  • Python機器學習之PCA降維算法詳解
  • Python機器學習算法之決策樹算法的實現與優缺點
  • python排序算法的簡單實現方法
  • Python實現K-means聚類算法并可視化生成動圖步驟詳解
  • python利用K-Means算法實現對數據的聚類案例詳解
  • python入門之算法學習
  • python實現線性回歸算法
  • Python實現七大查找算法的示例代碼
  • python 算法題——快樂數的多種解法

標簽:宿遷 黃山 景德鎮 三沙 欽州 喀什 臺灣 濟南

巨人網絡通訊聲明:本文標題《用Python給圖像算法做個簡單應用界面》,本文關鍵詞  用,Python,給,圖像,算法,做個,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《用Python給圖像算法做個簡單應用界面》相關的同類信息!
  • 本頁收集關于用Python給圖像算法做個簡單應用界面的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 精品欧美99一区无码视频| 亚洲h视频在线观看| 一级特黄特交牲大片| 全是裸男的电影禁片| 国产成人亚洲精品91专区高清| 性猛交乱妇免费看A片| 调教壮汉(h)| 三上悠亚人妻中文字幕在线| 爽欲亲伦小说杂烩下| 亚洲综合15p| 国产欧美一V精品久久| 成人午夜精品久久久久久久小说| 99国产精品99久久久久久胖胖| 欧洲bbbbb| 亚洲卡通动漫在线观看| 都市人妻熟女沉沦阅读| 双胞胎萝胯下吞吐粗大| 少妇乳好爽好紧久色视频| 久久久久久久精品一区888A∨| www激情网| 99热精品69堂国产| 欧美在线精品一区二区三区不卡 | 师兄啊师兄在线观看免费观看视频| 疯狂?喷水男女爽视频在线| 久久久久久久久久久久久18| 艳妇岳3p| 情趣店高H各种play文男男| yw.193.c㎝国产在线观看| 巨龙征服风韵美妇| 亚洲交性网| 成人午夜精品无码区久久蜜臀| 夜夜爽妓女7777免费观看| 精东影业精东影业果冻传媒| 公交车强摁做开腿呻吟h| 大地资源高清二在线观看| 国产成人久久婷婷精品流白浆| 岳的大肥臀| 国产乱婬精品一区二区三区毛片| 91精品国产色综合久久不卡电影 | 亚洲人成一区二区三区| 女主被强迫np肉高h|