iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >PyQt5中QtGui.QImage图片显示问题怎么处理
  • 765
分享到

PyQt5中QtGui.QImage图片显示问题怎么处理

2023-06-29 10:06:29 765人浏览 薄情痞子
摘要

这篇文章主要介绍PyQt5中QtGui.QImage图片显示问题怎么处理,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前言PyQt是python语言环境的GUI编程解决方案之一,另外还有PyGTK、wxPython等

这篇文章主要介绍PyQt5中QtGui.QImage图片显示问题怎么处理,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

前言

PyQt是python语言环境的GUI编程解决方案之一,另外还有PyGTK、wxPython等也较为常用。PyQt作为Qt语言的Python扩展,可以用来方便快速的开发界面应用。

PyQt5中QtGui.QImage图片显示问题怎么处理

PyQt5中的QtGui.QImage图片显示

import os.path as ospimport cv2from qtpy import QtCorefrom qtpy import QtWidgetsfrom qtpy import QtGui# TracelessLe注:代码示例,不可直接执行class MainWindow(QtWidgets.QMainWindow):def __init__(self):self.image = QtWidgets.QLabel()    def show_img(self, img_path):        self.image.clear()        img_np = cv2.imread(img_path)        width = img_np.shape[1]        height = img_np.shape[0]        img_rgb_data = cv2.cvtColor(img_np, cv2.COLOR_BGR2RGB)        # label_data = QtGui.QImage(img_rgb_data.data, width, height, QtGui.QImage.FORMat_RGB888)  # 这种方式可能会有部分图片显示有问题        label_data = QtGui.QImage(img_rgb_data.data, width, height, width*3, QtGui.QImage.Format_RGB888)  # 针对RGB图显示的正确方式        self.image.setPixmap(QtGui.QPixmap.fromImage(label_data))

图片显示问题分析

如上述代码中讲到的那样,针对RGB三通道图片显示的正确方法是使用:

label_data = QtGui.QImage(img_rgb_data.data, width, height, width*3, QtGui.QImage.Format_RGB888)

进入QtGui.QImage类,可以看到其支持的图片数据格式有很多:

PyQt5中QtGui.QImage图片显示问题怎么处理

从QT官网也能找到支持的图像格式:

PyQt5中QtGui.QImage图片显示问题怎么处理

而图片初始化方法也有很多:

PyQt5中QtGui.QImage图片显示问题怎么处理

从使用方式来看,主要分为三大类:
(1)传入图像尺寸或长宽,以及图像格式(QImage.Format
(2)传入图像数据,图像尺寸或长宽,以及图像格式
(3)传入图像路径,图像格式

通常对于已经使用OpenCV读取和处理过的图片,我们会使用方式(2)来初始化。

对于常用的RGB三通道图像,初始化时的图像格式一般设为QtGui.QImage.Format_RGB888

PyQt5中QtGui.QImage图片显示问题怎么处理

而在使用时,正确的使用方式是:

def __init__(self, data: bytes, width: int, height: int, bytesPerLine: int, format: 'QImage.Format')

如果使用

def __init__(self, data: bytes, width: int, height: int, format: 'QImage.Format')

方法初始化,可能会遇到显示上的一些问题。例如图片斜偏显示、图片黑白条间隔显示、图片加载直接崩溃等异常。

对比两种方法,发现问题在于bytesPerLine: int参数上。该参数指定了bytes型输入数据data在数据排布上的间隔(bytesPerLine)。如果未指定,对于某些输入数据,QtGui.QImage无法正常推断出数据排列格式,则会出现上述中的显示异常问题。

以上是“PyQt5中QtGui.QImage图片显示问题怎么处理”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

--结束END--

本文标题: PyQt5中QtGui.QImage图片显示问题怎么处理

本文链接: https://www.lsjlt.com/news/324228.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PyQt5中QtGui.QImage图片显示问题怎么处理
    这篇文章主要介绍PyQt5中QtGui.QImage图片显示问题怎么处理,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前言PyQt是Python语言环境的GUI编程解决方案之一,另外还有PyGTK、wxPython等...
    99+
    2023-06-29
  • 关于PyQt5中QtGui.QImage图片显示问题解析
    前言 PyQt是Python语言环境的GUI编程解决方案之一,另外还有PyGTK、wxPython等也较为常用。PyQt作为Qt语言的Python扩展,可以用来方便快速的开发界面应用...
    99+
    2024-04-02
  • iOS解决LaunchScreen图片显示问题:白屏、黑屏、不显示、显示旧的图片等等问题
    问题 在LaunchScreen启动页中设置图片,模拟器运行可以显示,真机运行无法显示。 在LaunchScreen启动页中设置图片,项目工程内看是有的,但是真机运行无法显示。 在LaunchScreen启动页中替换旧的图片,我们更新了as...
    99+
    2023-09-16
    xcode swift objective-c ios iOS开发中的疑难病症
  • PyQt5主窗口图标显示问题有哪些
    小编给大家分享一下PyQt5主窗口图标显示问题有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!窗口程序的开发流程如下: 先通过qt designer设置界面并...
    99+
    2023-06-14
  • 关于PyQt5主窗口图标显示问题汇总
    窗口程序的开发流程如下: 1. 先通过qt designer设置界面并将程序图标设置好,通过在designer中按ctrl + R 进行预览可以看到窗口左上角的图标,然后保存 2. ...
    99+
    2024-04-02
  • 使用PyQt5怎么显示超清高分辨率图片
    这期内容当中小编将会给大家带来有关使用PyQt5怎么显示超清高分辨率图片,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。常规加载先来看一下,如何借助 QLabel 和 QFileDialog 加载低分辨率的...
    99+
    2023-06-14
  • VB.NET中怎么显示图片
    本篇文章给大家分享的是有关VB.NET中怎么显示图片,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。VB.NET显示图片其实很简单:PictureBox1.Image=Image...
    99+
    2023-06-17
  • vue二进制转图片显示问题怎么解决
    这篇文章主要介绍“vue二进制转图片显示问题怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue二进制转图片显示问题怎么解决”文章能帮助大家解决问题。二进制转图片显示 后端返回的是byte[...
    99+
    2023-06-30
  • windows10照片查看器无法显示此图片怎么处理
    windows10系统内置照片查看器,用户可以应用这个工具去访问图片,但是有的客户使用照片查看器时遇到了无法显示此图片的现象,像这种情况要怎么处理呢?你先开启控制面板,以后搜索颜色管理,开启以后切换到高级菜单栏,将设定环境变量选项设置为“A...
    99+
    2023-07-15
  • html怎么显示图片
    小编给大家分享一下html怎么显示图片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! html显示图...
    99+
    2024-04-02
  • 如何在Python中处理图片处理的问题
    如何在Python中处理图片处理的问题,需要具体代码示例在如今的数字化时代,图片已经成为人们日常生活中不可或缺的一部分。我们随时随地可以通过手机拍摄、下载网络上的图片。然而,有时我们需要对这些图片进行一些处理,如裁剪、缩放、滤镜等操作。本文...
    99+
    2023-10-22
    Python 图片处理
  • 小程序中轮播图u-swiper图片无法显示问题
    问题:uview官网中 指定的图片路径字段为image,完全按照uview写轮播图却无法正常显示。    解决方法:1.把image字段改成url字段 给u-swiper加上 keyName="image" 最后找到了总结原因:npm下载...
    99+
    2023-09-13
    小程序 前端
  • 怎么处理vue渲染前的显示问题
    这篇文章将为大家详细讲解有关怎么处理vue渲染前的显示问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。添加css[v-cloak] { display:&nb...
    99+
    2024-04-02
  • pycharm调试时显示图片问题的解决
    查了攻略,还问了师兄,终于解决了我的问题== 想了想,没准有人会跟我犯同样的错误(好吧,,可能没几个)写篇趟坑日志。 点击show python promt 输入如下(类似)命令 ...
    99+
    2024-04-02
  • Android ImageView 不显示JPEG图片的问题解决
    Android ImageView 不显示JPEG图片今天在写一个小实例,ImageView在xml里面设置的是INVISIBLE,在代码里需要设置成setVisibility(View.VISIBLE),但图片没有显示出来,换成PNG或其...
    99+
    2023-05-31
    android imageview age
  • PyQt5中怎么显示消息框
    在PyQt5中显示消息框可以使用QMessageBox类。以下是一个简单的例子: import sys from PyQt5.QtW...
    99+
    2024-03-12
    PyQt5
  • 在pyqt5中展示pyecharts生成的图像问题
    本文通过一个实际的散点图案例,展示了如何使用pyqt5嵌套一个pyecharts图层的方法,通过这个技巧,可以在pyqt5的框架中也实现精美的数据可视化的功能模块。 技术背景 虽然现...
    99+
    2024-04-02
  • php怎么上传图片并显示图片
    在PHP中,可以使用`$_FILES`数组来处理上传的文件。以下是一个简单的示例代码,演示了如何上传图片并显示图片:```上传图片`...
    99+
    2023-10-11
    php
  • JavaGUI插入图片不显示问题解决方法
    问题描述: 在学习使用Java的GUI时,插入图片但是不显示代码如下所示: public abstract class AbstractMainFrame extends JFram...
    99+
    2024-04-02
  • 怎么解决BootStrap Fileinput手机图片上传显示旋转问题
    这篇文章主要介绍怎么解决BootStrap Fileinput手机图片上传显示旋转问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!最近因为项目需要用到了bootstrap file...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作