精华内容
下载资源
问答
  • python打开图片放到tkinter的界面里(opencv方式)
    千次阅读
    2020-12-02 11:33:52

    上次使用的别人的代码打开图片放到tkinter的图型界面当中。

    虽然感觉没有很懂但是不是自己想用的模块。今天换成了opencv的方式,修改成功。

    代码如下:

    # -*- coding: utf-8 -*-

    """

    Created on Sat Mar  7 18:03:50 2020

    @author: liyan

    """

    import tkinter

    from tkinter import *

    from PIL import Image,ImageTk  ###这个是没有想到的模块,也不确定能不能省

    from tkinter.filedialog import askopenfilename

    import time

    import cv2

    root = Tk()

    root.geometry('500x500')  ##这个小了一点,不知道怎么自适应

    root.title('图片处理')

    def choosepic():

    path_ = askopenfilename()

    img= cv2.imread(path_ )

    current_image = Image.fromarray(img)

    imgtk = ImageTk.PhotoImage(image=current_image)

    image_label.config(image=imgtk)

    image_label.image = imgtk # keep a reference

    path = StringVar()

    Button(root, text='选择图片', command=choosepic).pack()

    file_entry = Entry(root, state='readonly', text=path)

    #file_entry.pack()

    image_label = Label(root)

    image_label.pack()

    root.mainloop()

    完成图形界面并且可以很好的打开并显示。方便下一步处理图像里面的信息。

    更多相关内容
  • 今天小编就为大家分享一篇python tkinter canvas 显示图片的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • tkinter显示图片

    千次阅读 2021-02-06 11:23:23
    tkinter显示图片 直接显示 import tkinter root = tkinter.Tk() img_gif = tkinter.PhotoImage(file = '1dpmw.gif') label_img = tkinter.Label(root, image = img_gif) label_img.pack() root.mainloop() 但是上面...

    tkinter显示图片

    直接显示

    import tkinter
    root = tkinter.Tk()
    img_gif = tkinter.PhotoImage(file = '1dpmw.gif')
    label_img = tkinter.Label(root, image = img_gif)
    label_img.pack()
    root.mainloop()
    

    但是上面的有一个问题,就是对于png这类图片显示不成功,会发现是空白,所以不推荐使用,因为只支持.gif一种形式。

    用PIL加载显示

    import tkinter
    from PIL import Image, ImageTk
    root = tkinter.Tk()
    img_open = Image.open("2021-02-06_105510.png")
    img_png = ImageTk.PhotoImage(img_open)
    label_img = tkinter.Label(root, image = img_png)
    label_img.pack()
    root.mainloop()
    

    注意和上面的区别,其实就是图片加载的方式由原来的img_gif = tkinter.PhotoImage(file = '1dpmw.gif') 变为现在的:

    img_open = Image.open("2021-02-06_105510.png")
    img_png = ImageTk.PhotoImage(img_open)

    因为Image里面可以帮你解码,所以可以直接显示png。

    上面显示是通过把图片放在label上面实现的,你也可以放到button或者canvas上面都是可以的。

    图片显示空白

    但你可能发现你在使用的时候,你的显示是空白,这里是因为你在开发的时候上面的一段话会写在一个函数里面封装起来,这个时候导致img_open是局部的,所以函数运行结束就被回收了,所以显示的是空白,解决方案也很简单,将这个变量声明为全局即可。

    import tkinter
    from PIL import Image, ImageTk
    root = tkinter.Tk()
    img_png =None
    def func():
    	img_open = Image.open("2021-02-06_105510.png")
    	global img_png
    	img_png = ImageTk.PhotoImage(img_open)
    	label_img = tkinter.Label(root, image = img_png)
    	label_img.pack()
    func()
    root.mainloop()
    
    展开全文
  • 代码中的细节方面可以参看:TKinter部件用法总结 代码 from tkinter import * import os from tkinter import messagebox, filedialog import imageio from PIL import Image, ImageTk class Application(Frame): ...

    参考

    代码中的细节方面可以参看:TKinter部件用法总结

    代码

    from tkinter import *
    import os
    from tkinter import messagebox, filedialog
    import imageio
    from PIL import Image, ImageTk
    
    
    class Application(Frame):
        def __init__(self, master=None):
            super().__init__(master)
            self.master = master
            self.pack()
            self.place()
            self.createWidget()
    
        def createWidget(self):
            global photo
            photo = None
            self.label03 = Label(self, image=photo)
            self.label03.grid(column=0, row=0)
            # self.label03.place(relx=0.5, rely=0.5, anchor=CENTER)
    
            self.btn01 = Button(self, text='打开', command=self.getfile, bg='white', anchor='s')
            self.btn01.grid(column=0, row=1)
            # self.btn01.place(relx=0.8, rely=0.5, anchor=CENTER)
    
        def getfile(self):
            file_path = filedialog.askopenfilename(title='选择文件', filetypes=[(('JPG', '*.jpg')), ('All Files', '*')])
            img = Image.open(file_path)
            width, height = img.size
            
            img =  img.resize((700, int(700/width*height)))
    
            global photo
            photo = ImageTk.PhotoImage(img)  # 实际上是把这个变成全局变量
            self.label03.configure(image = photo)
            self.label03.image = photo
    
    root = Tk()
    root.geometry('700x680')
    app = Application(master=root)
    
    root.mainloop()
    

    示例

    运行示例:
    在这里插入图片描述

    展开全文
  • Python之解决tkinter.PhotoImage不显示图片的问题 Python3 最近做一个以图搜图的项目时,老师让做一个GUI的界面,因为之前学过tkinter所以信心满满的去做,结果搞了一下午,布局都没建好,瞬间崩溃。 项目的主要需求...

    Python之解决tkinter.PhotoImage不显示图片的问题 Python3

    最近做一个以图搜图的项目时,老师让做一个GUI的界面,因为之前学过tkinter所以信心满满的去做,结果搞了一下午,布局都没建好,瞬间崩溃。

    项目的主要需求是:需要添加一个按钮,实现选择图片,并把图片和图片名显示到页面上,同时把相似度最高的图显示出来。

    以下是一个点击按钮选择图片,并显示图片名和图片的一个demo

    from tkinter import *
    import tkinter.filedialog
    from PIL import Image, ImageTk
    
    
    # 只能使用GIF格式
    # def choosepic():
    #    path_=tkinter.filedialog.askopenfilename()
    #    #获取图片路径
    #    path.set(path_)
    #    #print(path_)
    #    img_gif=tkinter.PhotoImage(file=path_)
    #    l1.config(image=img_gif)
    #    l1.image=img_gif#keep a reference
    
    # 可使用其他格式图片,但需要PIL库
    def choosepic():
        path_ = tkinter.filedialog.askopenfilename()
        # 获取图片路径
        path.set(path_)
        # print(path_)
        img_open = Image.open(entry.get())
        img = ImageTk.PhotoImage(img_open.resize((200,200)))#把图片缩放以下,不然太大了,放不下
        l1.config(image=img)
        l1.image = img  # keep a reference
    
    root = tkinter.Tk()#k是小写
    root.title("图片显示")
    #设置大小和位置
    root.geometry("800x400+200+200")
    # root = Tk()
    path = StringVar()
    button1 = Button(root, text='选择图片', command=choosepic)
    button1.pack()
    entry = Entry(root, state='readonly', text=path,width = 100)
    entry.pack()
    l1 = Label(root)
    l1.pack()
    root.mainloop()
    

    以下是一个并列显示多张图片的demo

    from tkinter import Tk, Label
    from PIL import Image, ImageTk
    
    root = Tk()
    # 总共4张图片
    img_list = ["001-0.jpg", "001-1.jpg", "002-0.jpg", "002-1.jpg"]
    def load_img(index, item):
        # 打开图片。
        # resize():示例图片太大,这里缩小一些。
        img = Image.open(item).resize((200, 200))
        # 引用:添加一个Label,用来存储图片。使用PanedWindow也行。
        panel = Label(master=root)
        panel.photo = ImageTk.PhotoImage(img)  # 将原本的变量photo改为panel.photo
    
        # 图片用Label来显示,参数master改不改为panel都行,这里就不改了。
        # 注意:参数image改为panel.photo
        Label(master=root, image=panel.photo).grid(row=0, column=index)
    
    
    # 使用for循环添加图片,enumerate:获取元素与其索引值
    for index, item in enumerate(img_list):
        load_img(index, item)  # 执行函数
    
    root.mainloop()
    

    以下是项目中改动的部分代码

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C5vsrPcW-1634806535151)(C:\Users\12235\AppData\Roaming\Typora\typora-user-images\image-20211021165144462.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jDztZkZC-1634806535152)(C:\Users\12235\AppData\Roaming\Typora\typora-user-images\image-20211021165218397.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-az6D909Y-1634806535153)(C:\Users\12235\AppData\Roaming\Typora\typora-user-images\image-20211021165300493.png)]

    以上参考了这两篇文章,个人感觉很有用,补足了之前的不足之处。

    https://blog.csdn.net/fjdmy001/article/details/78498150

    https://blog.csdn.net/m0_50000839/article/details/120078530

    01/article/details/78498150

    https://blog.csdn.net/m0_50000839/article/details/120078530

    展开全文
  • tkinter实线图片拖动

    2018-04-21 15:03:06
    个人编写的小程序,实现拓片在GUI的拖动,十分盈动好用
  • Python + Tkinter图片浏览器(一)——最小体积前言说明布局方式图片展示自动适应窗口选择图片目录功能图片导航浏览图库窗口调整模块tkinterPILos自定义imageutil.pyimageviewer.py界面笔记 前言 之前写过一篇关于...
  • from tkinter import * import tkinter as tk from PIL import ImageTk from PIL import Image def get_img(filename, width, height): im = Image.open(filename).resize((width, height)) im = ImageTk....
  • 需求:写一个软件,要求本地打开一张图片显示出来,并可以进行选框标注,自动生成坐标,同时给出输入框,可以手动输入内容,并保存成json文件 。输入: 本地打开一张图片操作: 鼠标进行选框标注,并输入选框内的...
  • 图片查看器-Python-tkinter

    千次阅读 2021-04-28 14:31:40
    图片浏览 2 图像缩放 3 图像旋转 4 切换浏览 5 拖拽查看 设计思路 设计思路概要 图像处理 PILLOW库实现 UI界面
  • 最近用tkinter写了个打开本地图片并且将rect的坐标值标注在图片上的工具,这样就可以实现定量的分析了。Python需要的第三方库有:pillow,opencv。至于tkinter的那些基本知识,我就不提了。直接上代码吧。 from .....
  • from Tkinter import *import webbrowserroot = Tk()frame = Frame(root)frame.pack()url = 'http://www.sampleurl.com'def OpenUrl(url):webbrowser.open_new(url)button = Button(frame, text="CLICK", command=Op...
  • tkinter通过按钮加载图片

    千次阅读 2020-10-06 19:51:36
    from tkinter import * import tkinter.filedialog from PIL import Image,ImageTk #只能使用GIF格式 ...# #获取图片路径 # path.set(path_) # #print(path_) # img_gif=tkinter.PhotoImage(file=path_) #.
  • python的tkinter打开文件和文件夹

    千次阅读 2021-08-22 12:01:01
    print('请选择文件夹') root = tk.Tk() root.withdraw() rootpath = filedialog....print('请选择图片') waterpath = filedialog.askopenfilename() print('水印图片选择完毕,路径为:',waterpath) ...
  • python – 使用Tkinter显示图像

    千次阅读 2020-12-03 23:49:07
    我正在研究一个使用Tkinter和ImageTk显示一系列图像的python程序.我无法显示多个图像.下面是一个重现错误的小型完整程序.程序直接递归搜索当前的jpg文件,并在用户按Enter键时显示它们.import Tkinter, ImageTk,os, ...
  • tkinter缩放窗口和图像

    千次阅读 2021-01-15 02:28:07
    tkinter里的一个组件是图像时,如果允许缩放主窗口的同时,让图像也缩放,有时候是一种需求。主要实现方法是bind一个回调函数。这里的例子是,图像上绘制了矩形框,当窗口被用鼠标缩放时,图像缩放,框也缩放。# ...
  • from tkinter import * window = Tk() window.title("亲情导出") window.geometry('400x300') import tkinter.filedialog e1 = Label(window, text="路径:")#这是标签 e1.grid(row=1,column=0) g = Entry(window,...
  • Python Tkinter GUI(三)显示图片

    万次阅读 多人点赞 2017-11-10 16:49:31
    怎么才能让界面显得美观呢?布局,色彩,图片这些都可以让界面看着舒服,操作体验好。这章看看如何添加图片,以及比较坑的地方,撸...label_text = Tkinter.Label(root, text = '文本'); label_text.pack(); 2.
  • from tkinter import * from PIL import Image,ImageTk from tkinter import ttk import os import platform import cv2 import threading capture = cv2.VideoCapture(0) def loopCapture(): global capture...
  • # 创建GUI窗口打开图像 并显示在窗口中 from PIL import Image, ImageTk # 导入图像处理函数库 import tkinter as tk # 导入GUI界面函数库 # 创建窗口 设定大小并命名 window = tk.Tk() window.title("我是。。") ...
  • Python + Tkinter图片浏览器(二)前言说明改进功能图片导航显示上一张高清图片显示下一张高清图片缩略图导航缩略图列表缩略图上一页缩略图下一页缩略图指引图片管理高清图片删除图片图库管理浏览图库重载图库调整...
  • 使用tkinter实现交互式图像处理tkinter 基本控件与使用tkinter基本控件Button按钮控件canvasLabel补充知识布局管理器grid使用tkinter+opencv 制作交互式程序小试牛刀锋芒毕露1 tkinter 基本控件与使用 我们将学习...
  • 小例子,就是点击按钮打开路径选择窗口,选择后把值传给Entry输出。 效果预览 这是选择前: 选择: 选择后: 代码 很基础的写法。 from tkinter import * from tkinter.filedialog import askdirectory def ...
  • tkinter 是 Python 的标准 GUI 库。内置到 python 的安装包中,可以直接import使用。学习用tkinter 组件treeview显示excel内容再通过点击修改保存回去新工作表。...开始前开始时设想是打开一个界面...
  • tkinter实现图片自适应

    千次阅读 2020-09-09 16:28:48
    谢谢分享!!!!! import io from PIL import Image,...import tkinter as tk def resize(w, h, w_box, h_box, pil_image): ''' resize a pil_image object so it will fit into a box of size w_box times
  • 详解python tkinter 图片插入问题

    千次阅读 2020-12-03 23:49:16
    通过tkinter.PhotoImage插入GIF, PGM/PPM格式的图片。import tkinterclass Gui:def __init__(self):self.gui=tkinter.Tk() # create gui windowself.gui.title("Image Display") # s...
  • from Tkinter import * from PIL import Image, ImageTk from photoResize import resize def change(photo): w, h = photo.size w_box=40 h_box=40 global photo_resized,photo_image,photoLabel ...
  • tkinter图片格式

    2019-08-26 20:27:23
    import tkinter as tk #import if __name__ == '__main__': win = tk.Tk() win.geometry('900x500+100+50') win.title("登陆窗口") image1=tk.PhotoImage(file=r'D:\python\virenv\envtk\chse.gif') ...
  • 无论使用tkinter.PhotoImage还是其他方法,当你向tkinter组件(widgets)添加图片时,你一定要向图片添加一个自定义的引用;否则,图片会无法显示。可以像下面这样这样将组件的属性引用到图片上,其中label.image = ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,479
精华内容 1,391
关键字:

tkinter打开图片