You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在OpenCV状态栏中正确显示°(度数符号)避免出现°?

解决OpenCV状态栏显示度数符号乱码问题

你遇到的cv2.displayStatusBar(winname, '°')显示成°的问题,根源是opencv-python 4.1.0.25版本的displayStatusBar接口对非ASCII字符的编码处理有局限——它默认把输入字符串按Latin-1编码解析,而你传入的°是UTF-8编码(占2字节:0xC2 0xB0),这两个字节被当作Latin-1字符解析时,0xC2对应Â,0xB0对应°,所以出现了乱码。

给你两个可行的解决办法:

  • 直接用Latin-1编码的转义字符表示度数符号
cv2.displayStatusBar(winname, '\xb0')
  • 将UTF-8的度数符号转成Latin-1编码格式后传入
degree_char = '°'.encode('latin-1').decode('latin-1')
cv2.displayStatusBar(winname, degree_char)

如果后续有条件,也可以升级opencv-python到4.5及以上版本,新版本对Unicode字符的支持更完善,直接传入'°'就能正常显示。

内容的提问来源于stack exchange,提问作者maiermic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 23:35:20