找回密码
 加入我们
搜索
      
楼主: Potat1

[外设] “为什么启用 HDR 之后颜色不正”问题详解

  [复制链接]
发表于 2022-11-9 17:17 | 显示全部楼层
moweiraul 发表于 2022-11-9 16:54
我有个问题,我发现不论是win还是mac,打开后都是全局hdr,怎么能做到在显示hdr内容才开启hdr呢,就像iPhon ...

其实都可以做到,单纯懒的问题
发表于 2022-11-9 17:18 | 显示全部楼层
Potat1 发表于 2022-11-9 17:12
所有系统内显示的显示器信息都是通过读取 EDID 实现的。

硬要说的话,是所有环节。 ...

嗯,感觉显示不正常的时候可以甩锅的地方太多了。我还没深入研究,所以想先问问CRU是否能解决这一类型的显示问题?
发表于 2022-11-9 17:19 | 显示全部楼层
yiriyige 发表于 2022-11-9 17:10
MacBook带给我的感觉是,切换内建显示器的那些配置文件就是一个重新握手的过程(屏幕会短暂黑一下),这 ...

不是,这跟映射没有关系,只是色彩管理做的好罢了。

还有HDR->HDR还是HDR->SDR过程都属于映射,顺便HDR->SDR过程并没有动态范围的压缩(请不要拿BD标准给搞混了)

实际上如今的HDR本质上就是高动态范围的SDR图像罢了。只是为了跟BD标准下的SDR标准区分开来罢了。
发表于 2022-11-9 17:19 | 显示全部楼层
Potat1 发表于 2022-11-9 16:50
不存在你说的这种可能性,信号切换是需要重新握手的,相当于显示器换了个信号源...... ...

主要是截图这点,我一直觉得很神奇。
之前记得很清楚,开了全局HDR后,桌面和应用截图出来是不正常的,发灰过曝,包括但不限于QQ 微信 上帝给的prtsc键。为此截图得拉到SDR的显示器上。  大概是22H2之后,正常了,哪怕是正在窗口化播放HDR片子,截图也只有HDR那部分是异常的。
发表于 2022-11-9 17:21 | 显示全部楼层
Potat1 发表于 2022-11-9 17:00
……你要不先把文章内容看一遍。

如果你说的是「SDR 和 HDR 分别以不同的亮度正常显示」,那么 Windows  ...

他说的就是第一种情况,自动识别HDR,然后自动把显示器切换到HDR模式,目前iPhone和iPad上自动的,Windows和macOS都需要手动切换
发表于 2022-11-9 17:26 | 显示全部楼层
houyuzhou 发表于 2022-11-9 17:19
主要是截图这点,我一直觉得很神奇。
之前记得很清楚,开了全局HDR后,桌面和应用截图出来是不正常的, ...

只能推测也许22H2后windows调整了截图软件的机制,可能是系统底层抓取输出视频前的绘制信息,也有可能是把整个HDR内容根据之前映射信息重新转回sRGB
发表于 2022-11-9 17:27 | 显示全部楼层
我有两台显示设备,LG 42 C2 和 PG42UQ
最开始根据贴吧的一个帖子,在C2下 ,用CRU调整了一些参数(当时没有买pg)
当开启windows 的 HDR 后
首先看HDR素材(比如油-管上的hdr视频),两台设备显示都是正常的
但是SDR素材,两台设备表现是完全不一样的,比如桌面图标在C2下显示是比较正常的,在PG42UQ下却是发白发灰的
非常头疼



发表于 2022-11-9 17:27 | 显示全部楼层
不如说假hdr居多 WindowsHDR管理也是一坨屎
实际玩游戏真HDR效果还是明显的
发表于 2022-11-9 17:33 | 显示全部楼层
erid414 发表于 2022-11-9 17:26
只能推测也许22H2后windows调整了截图软件的机制,可能是系统底层抓取输出视频前的绘制信息,也有可能是 ...

可能把,还有就是我现在是三屏拼接,经常单应用跨屏使用,包括各种平面设计\剪辑软件,%100肯定两侧的SDR和中间的HDR没有任何冲突和异常。
 楼主| 发表于 2022-11-9 17:40 | 显示全部楼层
hsmms 发表于 2022-11-9 17:19
不是,这跟映射没有关系,只是色彩管理做的好罢了。

还有HDR->HDR还是HDR->SDR过程都属于映射,顺便HDR- ...

色彩管理就是 mapping ......

如今的 HDR 本质上就是高动态范围的 SDR 都来了,PQ 本质是 Gamma 是吧?
 楼主| 发表于 2022-11-9 17:41 | 显示全部楼层
ricercar 发表于 2022-11-9 17:17
其实都可以做到,单纯懒的问题

其实我觉得这功能是不必要的,手机的 HDR 性质比较特殊,和 PC 区别很大。
发表于 2022-11-9 17:41 | 显示全部楼层
erid414 发表于 2022-11-9 09:26
只能推测也许22H2后windows调整了截图软件的机制,可能是系统底层抓取输出视频前的绘制信息,也有可能是 ...

很可能是截图程序和window manager转制用了winui2 不再是之前的纯win32 新的色彩管理api就是在这里提供的 大部分wpf和uwp程序更新就可以用 win32程序是不行的
 楼主| 发表于 2022-11-9 17:41 | 显示全部楼层
houyuzhou 发表于 2022-11-9 17:19
主要是截图这点,我一直觉得很神奇。
之前记得很清楚,开了全局HDR后,桌面和应用截图出来是不正常的, ...

我没有更新到 22H2 过,如果后面 HDR 下截 SDR 内容正常了,显然说明它在截图的时候把内容转回 SDR Gamma 了。
 楼主| 发表于 2022-11-9 17:43 | 显示全部楼层
YsHaNg 发表于 2022-11-9 17:41
很可能是截图程序和window manager转制用了winui2 不再是之前的纯win32 新的色彩管理api就是在这里提供的 ...

其实不用 MHC2 也能解决 HDR 截图的问题,怎么转过来的怎么转回去就行,说白了都是本来就应该做完的功能拖了几年......
发表于 2022-11-9 17:55 来自手机 | 显示全部楼层
该吵一样吵
发表于 2022-11-9 17:55 | 显示全部楼层
看得出来在很努力的解释,但是我看不懂,很多专业名词都不带解释
发表于 2022-11-9 18:24 | 显示全部楼层
Potat1 发表于 2022-11-9 17:00
……你要不先把文章内容看一遍。

如果你说的是「SDR 和 HDR 分别以不同的亮度正常显示」,那么 Windows  ...


方法无所谓,但是要结果对就行,比如您说的SDR 和 HDR 分别以不同的亮度正常显示,以mac为例,外接显示器后,打开hdr,显示器就直接最高亮度了(显示器本身的亮度调整就置灰了),不区分是不是hdr的内容,这个很头大
发表于 2022-11-9 18:26 | 显示全部楼层
moweiraul 发表于 2022-11-9 16:54
我有个问题,我发现不论是win还是mac,打开后都是全局hdr,怎么能做到在显示hdr内容才开启hdr呢,就像iPhon ...

以前用potplayer+VLC+LAVdecoder实现过视频方面的自动HDR,平时只需要设置到SDR模式,打开HDR视频时会自动切换到HDR,关闭又会自动切回SDR
部分游戏在设置里保存了HDR相关设定后,下次全屏启动也会自动把显示器切到HDR

不过估计上限也就是这样了,没有手机那么灵活,并且网页油管windows不打开HDR是识别不出来的,画质选项里直接不给HDR
 楼主| 发表于 2022-11-9 18:29 | 显示全部楼层
moweiraul 发表于 2022-11-9 18:24
方法无所谓,但是要结果对就行,比如您说的SDR 和 HDR 分别以不同的亮度正常显示,以mac为例,外接显示器 ...

我建议是用快捷键......手机特殊的 HDR 实现模式决定了它能这样做,桌面系统要做这个会遇到很多问题,难以保障兼容性。
发表于 2022-11-9 19:04 | 显示全部楼层
本帖最后由 70652 于 2022-11-9 19:32 编辑

楼主请问下apex之类不支持hdr的游戏是开全局hdr好还是不开好?
按照楼主的帖子,是应该不开色彩更好
我自己感觉开了好像亮度色彩什么的更好,看不出丢失了什么,但是明显感觉对比度更好了
发表于 2022-11-10 08:54 | 显示全部楼层
70652 发表于 2022-11-9 19:04
楼主请问下apex之类不支持hdr的游戏是开全局hdr好还是不开好?
按照楼主的帖子,是应该不开色彩更好
我自己 ...

Windows11有自动HDR,可以尝试一下
发表于 2022-11-10 09:37 | 显示全部楼层
同一张显卡接两个显示器可以实现一个hdr 另一个sdr吗。我刚买了一个hdr显示器,想组双屏,系统是win10,显卡rx480。但是只能在非hdr模式下同时点亮两个屏幕。其他论坛说是可以这样接,搞得我都不知道是系统问题还是显卡问题。
发表于 2022-11-10 10:21 | 显示全部楼层
Potat1 发表于 2022-11-9 16:43
丢精度指的是色阶,你摆个 0 ~ 255 的灰阶图能做到截图比对、实拍比对、肉眼比对都没有任何区别,那你可 ...

我觉得你说的信息丢失不准确,原理上SDR是HDR的子集,变换过程不需要丢弃信息,而是扩展信息。

更准确的描述应该是  SDR扩展(上变)的过程中会产生畸变,会造成信息失真
发表于 2022-11-10 10:49 | 显示全部楼层
华硕OLED显示器对HDR做过解释,大意就是不建议全局打开HDR,需要观看HDR资源时(电影、游戏)才打开
目前显示器是48QG900,写的HDR10,打开HDR后,桌面还是要发灰,不知道亮度平衡该怎么调整
描述我打开HDR,显示器亮度自动直接拉满了...
 楼主| 发表于 2022-11-10 11:26 来自手机 | 显示全部楼层
本帖最后由 Potat1 于 2022-11-10 11:28 编辑
wei73 发表于 2022-11-10 10:21
我觉得你说的信息丢失不准确,原理上SDR是HDR的子集,变换过程不需要丢弃信息,而是扩展信息。

更准确的 ...


别在这原理上了,你根本连 HDR 是什么都不知道。

SDR 就不是 HDR 的子集,而是两个完全不同的东西。
发表于 2022-11-10 11:34 | 显示全部楼层
mark,学习一下
发表于 2022-11-10 11:40 | 显示全部楼层
谢谢楼主拨乱反正 很努力的第一遍没看懂。。
发表于 2022-11-10 14:03 | 显示全部楼层
Potat1 发表于 2022-11-10 11:26
别在这原理上了,你根本连 HDR 是什么都不知道。

SDR 就不是 HDR 的子集,而是两个完全不同的东西。 ...

嗯,我确实不懂HDR,所以就不误人子弟了

潜水。
发表于 2022-11-10 14:15 | 显示全部楼层
本帖最后由 hsmms 于 2022-11-10 14:19 编辑
wei73 发表于 2022-11-10 10:21
我觉得你说的信息丢失不准确,原理上SDR是HDR的子集,变换过程不需要丢弃信息,而是扩展信息。

更准确的 ...


错误的,无论HDR转SDR还是SDR转HDR这个过程不会造成信息的丢失。因为这个过程本身就只是数据格式或者说亮度坐标系的转换。所以也不存在什么扩展信息的说法。

HDR10纪录的是绝对亮度值(DV,HDR10+,HLG不在这个范围内),而SDR使用的是相对亮度。SDR的EOFT是BT.1886,而HDR10的EOTF是ST2084 PQ。虽然两者是不同的但是可以换算,但前提是SDR模式下有足够的亮度余量。就比如要还原0-200nit之间的信息,HDR10就是纪录50nit 100nit 150nit 200nit这几个亮度节点,而按照SDR下就是200nit(100%),然后按照75% 50%以及25%换算,这样SDR模式下就能实现HDR 0-200nit之间完整信息了。

其实所谓的HDR设备只是支持机内处理HDR信号以及色调映射,而非HDR设备不支持机内处理只能通过外部的设备实现。如今的HDR设备跟非HDR设备最大区别只是HDR模式下能触发更高的峰值亮度。如果设备SDR模式下有足够的亮度余量,那么HDR转SDR照样能实现完整的HDR效果。这就是为什么我前面会说HDR本身就是高动态范围图像的SDR原因就在这里。

所以如今的HDR跟SDR之间的问题更多的是设备上的问题,系统上的问题,而不是原理上的问题。
 楼主| 发表于 2022-11-10 15:49 | 显示全部楼层
hsmms 发表于 2022-11-10 14:15
错误的,无论HDR转SDR还是SDR转HDR这个过程不会造成信息的丢失。因为这个过程本身就只是数据格式或者说亮 ...

你看看,这就属于是完全不懂 HDR 的原理和目的,非要自己钻个牛角尖还要死命往里绕的......我就跟你说一遍,你要实在没法理解就算了。

无论HDR转SDR还是SDR转HDR这个过程不会造成信息的丢失。因为这个过程本身就只是数据格式或者说亮度坐标系的转换。


是的,SDR 和 HDR 无非是两条分布的曲线,所谓的上变换/下变换过程无非是坐标系的转换。问题是精度呢?

如果色深是无限大的,在高低电平间有无限多个挡位,那么你说的的确是成立的。但现实里根本不存在你脑补的那个无限色深 SDR , HDR 的目的就是固定的目标色深内提高精度;原理上讲,就是把码值重分配进一条更均匀的曲线。

就比如要还原0-200nit之间的信息,按照SDR下就是200nit(100%),然后按照75% 50%以及25%换算,这样SDR模式下就能实现HDR 0-200nit之间完整信息了。


还原 0 - 200 尼特的信息都来了,200 尼特 HDR 是吧?要不干脆再降点,让 HDR 把白点降到 100 尼特和 SDR 去比啊?

当白点亮度固定为 10000 尼特时,在 10 bit 的 SDR Gamma 里,低于 200 尼特的码值一共有 201 个;同样的 10 bit 色深,HDR ST.2084 里,低于 200 尼特的码值有 593 个。

你教教我,要怎样实现在 201 个码值里再现 593 个码值的完整信息?话筒递给你,今天你在坛里证出来,马上可以准备去领下届菲尔茨了

Dolby Vision(PGC) 、HDR 10+ 都是绝对亮度这种小问题就懒得指正你了,HDR 和 SDR 的区别正是原理上的问题。正是因为具有更高的精度,所以 HDR 在相同的色深范围内可以提供同亮度下较 SDR 更高的精度 / 同精度下较 SDR 更高的亮度。什么“最大区别只是HDR模式下能触发更高的峰值亮度”、“HDR本身就是高动态范围图像的SDR”都是屁话,如果白点亮度只有 100 尼特,那么根本就不需要 HDR.
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2024-11-23 21:50 , Processed in 0.015078 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2007-2024 Chiphell.com All rights reserved.

快速回复 返回顶部 返回列表