如何将深度学习的float32图像转为Unit8格式以方便cv2使用

如何将深度学习的float32图像转为Unit8格式以方便cv2使用在使用Pyside2中的QImage处理深度学习模型生成的图片时,需要将float32的图像转为Unit8格式,再使用cv2处理。一开始使用网上的其他教程,如下: #模型生成 G_recon=G(self.content,True) #将(1,3,256,256)尺寸的转为(256,256,3)G_recon=((G_recon[0].cpu().detach().numpy().transpose(1,2,0)+1)/2)

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

在使用Pyside2中的 QImage处理深度学习模型生成的图片时,需要将float32的图像转为Unit8格式,再使用cv2处理。
一开始使用网上的其他教程,如下:

		 # 模型生成
		G_recon = G(self.content, True)
		# 将(1,3,256,256)尺寸的转为(256,256,3)
        G_recon = ((G_recon[0].cpu().detach().numpy().transpose(1, 2, 0) + 1) / 2)  
        G_recon = (G_recon) * 255.0  # 将图像数据扩展到[0,255]
        G_recon = np.array(G_recon, dtype='uint8')  # 改为Unit8
        G_recon = cv2.cvtColor(G_recon, cv2.COLOR_BGR2RGB)
        cv2.imwrite('ppp.png', G_recon) # 用cv2保存图像

但是在Lable上展示的的图像跟预期不一样,如下图:
在这里插入图片描述

但是将上面代码中的
G_recon = cv2.cvtColor(G_recon, cv2.COLOR_BGR2RGB)
改为

G_recon = cv2.cvtColor(G_recon, cv2.COLOR_RGBA2RGB)

就能正常显示:
在这里插入图片描述

RGBA格式:
rgba() 函数使用红®、绿(G)、蓝(B)、透明度(A)的叠加来生成各式各样的颜色。

RGBA 即红色、绿色、蓝色、透明度(英语:Red, Green, Blue、Alpha)。

红色(R)0 到 255 间的整数,代表颜色中的红色成分。。
绿色(G)0 到 255 间的整数,代表颜色中的绿色成分。
蓝色(B)0 到 255 间的整数,代表颜色中的蓝色成分。
透明度(A)取值 0~1 之间, 代表透明度。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/193317.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • DirectX修复工具常见问题解答

    DirectX修复工具常见问题解答经常有人在网上发帖询问DirectX修复工具的一些问题,但是有些问题的回答并不够准确。因此作者在这里把一些常见的问题列出,供大家参考。问题1:XP系统上运行软件时出现0xc0000135的错误,怎么回事?答:WindowsXPSP3系统用户需先安装Microsoft.NETFramework2.0或更高版本才可运行本程序,详情请见程序文件夹中的“致WindowsXP用户

  • 数据质量监控Griffin——使用

    数据质量监控Griffin——使用一、环境生产环境数据质量监控griffin:地址:http://XXXXXXXXX:4200/#/health账号:admin密码:123456二、Griffin是干什么的?官方介绍大数据模块是大数据平台中数据方案的一个功能组件,Griffin(以下简称Griffin)是一个开源的大数据数据解决质量模式,它支持所有数据和流数据方式检测质量模式,可以从不同维度(不同标准执行完毕后检查源端和目标端的数据数量是否一致、源表的数据空值数量等)收集数据资产,从而提高数据的准确度、可信度。在格里芬的架

  • Matlab中meshgrid的用法简介

    Matlab中meshgrid的用法简介meshgrid:网格1、主要使用的函数为[X,Y]=meshgrid(xgv,ygv);meshgrid函数生成的X,Y是大小相等的矩阵,xgv,ygv是两个网格矢量,xgv,ygv都是行向量。X:通过将xgv复制length(ygv)行(严格意义上是length(ygv)-1行)得到Y:首先对ygv进行转置得到ygv’,将ygv’复制(length(xgv)-1)次得到。…

  • Django(60)Django内置User模型源码分析及自定义User

    Django(60)Django内置User模型源码分析及自定义User前言Django为我们提供了内置的User模型,不需要我们再额外定义用户模型,建立用户体系了。它的完整的路径是在django.contrib.auth.models.User。User模型源码分析

  • 使用 HTML、CSS 和 JS 的简单倒数计时器[通俗易懂]

    使用 HTML、CSS 和 JS 的简单倒数计时器[通俗易懂]JavaScript倒数计时器用于各种电子商务和建设中的网站,以使用户保持最新状态。我们在不同类型的电子商务网站上看到,在任何产品或优惠到达之前的某个时间开始倒计时。在本文中,我使用简单的JavaScript代码创建了一个倒数计时器和你分享。您可以观看它的现场演示以了解它是如何工作的。如果您知道如何创建数字时钟,那么创建这样的项目就会容易得多。您可以在此处提前安排特定日期或时间。然后,在JavaScript代码的帮助下,从那个时间减去当前时间,减法每秒减少一次。正如您在上图中所看到的,我在这

  • python进阶(22)pydantic–数据类型校验[通俗易懂]

    python进阶(22)pydantic–数据类型校验[通俗易懂]pydantic库的作用pydantic库是一种常用的用于数据接口schema定义与检查的库。Pydantic在运行时强制执行类型提示,并在数据无效时提供用户友好的错误信息。pydantic安

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号