我正在尝试使用PR650、Mac (最新版本)和Mac OSx与小牛对我的屏幕进行灰度校正和色度校准。
当运行没有附加PR650的伽马校准时,我没有得到任何错误,但附加了它后,精神病在一次测量后冻结,并给出了下面的错误。我是精神病的新手,所以任何帮助都是很棒的!
Traceback (most recent call last):
File "/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/psychopy/monitors/MonitorCenter.py", line 729, in onCalibGammaBtn
stimSize=stimSize, monitor=self.currentMon)
File "/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/psychopy/monitors/calibTools.py", line 851, in getLumSeries
actualLum = photometer.getLum()
File "/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/psychopy/hardware/pr.py", line 156, in getLum
self.measure()
File "/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/psychopy/hardware/pr.py", line 443, in measure
self.lastColorTemp = int(self.getLastColorTemp()[3])
ValueError: invalid literal for int() with base 10: '003208.'发布于 2014-08-14 17:59:31
这很奇怪。从字面上看,该错误是由PsychoPy试图解释字符串“003208”引起的作为一个整数,而Python被“.”在字符串中。
当PR650收到以开尔文为单位报告温度的命令时,该字符串来自串行端口。我不知道为什么最近这会成为一个问题(也许你的PR650返回的色温是小数,而我的返回的是整数?
无论如何,修复方法是编辑文件/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/psychopy/hardware/pr.py,这样第443行就会显示:
self.lastColorTemp = int(float(self.getLastColorTemp()[3]))
这样字符串“003208”首先转换为浮点型3208.0,然后,然后转换为整数3208 (开尔文)
https://stackoverflow.com/questions/25286572
复制相似问题