Example #1
0
def measure(color):
    print "Color:" + str(color)
    teststim.setColor(eizoGS320.encode_color(color, color))
    teststim.draw()
    mywin.flip()
    time.sleep(imi)
    # Trigger measurement
    if(eyeone.I1_TriggerMeasurement() != constants.eNoError):
        print("Measurement failed.")
    # retrieve Color Space
    if(eyeone.I1_GetTriStimulus(colorspace, 0) != constants.eNoError):
        print("Failed to get color space.")
    else:
        print("Color Space " + str(colorspace[:]) + "\n")
        color_list.append(colorspace[:])
                # Write justmeasure color file containing the data
                # f2.write(str(colorspace[:])[1:-1])
                #f2.write("\n")
        # retrieve spectrum
    if(eyeone.I1_GetSpectrum(spectrum, 0) != constants.eNoError):
        print("Failed to get spectrum.")
    else:
        print("Spectrum: " + str(spectrum[:]) + "\n")
        spec_list.append(spectrum[:])
    # write data to file
    file.write_data_txt(grayvals=[color, color], rgb=None, xyY=colorspace,
            voltage=None, spec_list=spectrum, delimiter="\t")
Example #2
0
def measure(color):
    print "Color:" + str(color)
    teststim.setColor(eizoGS320.encode_color(color, color))
    teststim.draw()
    mywin.flip()
    time.sleep(imi)
    # Trigger measurement
    if eyeone.I1_TriggerMeasurement() != constants.eNoError:
        print ("Measurement failed.")
    # retrieve Color Space
    if eyeone.I1_GetTriStimulus(colorspace, 0) != constants.eNoError:
        print ("Failed to get color space.")
    else:
        print ("Color Space " + str(colorspace[:]) + "\n")
        color_list.append(colorspace[:])
        # Write justmeasure color file containing the data
        # f2.write(str(colorspace[:])[1:-1])
        # f2.write("\n")
        # retrieve spectrum
    if eyeone.I1_GetSpectrum(spectrum, 0) != constants.eNoError:
        print ("Failed to get spectrum.")
    else:
        print ("Spectrum: " + str(spectrum[:]) + "\n")
        spec_list.append(spectrum[:])
    # write data to file
    file.write_data_txt(
        grayvals=[color, color], rgb=None, xyY=colorspace, voltage=None, spec_list=spectrum, delimiter="\t"
    )
Example #3
0
from stimuli import eizoGS320
import Image

color = bg = 621
voltages = (1067, 1590, 1514)
# set tubes (see find_color.R for details)

tub = DevTubes()
eye_one = EyeOne()#dummy=True)
mywin = visual.Window(size=(1024, 1536), monitor='mymon',
            color=(1, 0, 0), screen=1, colorSpace='rgb')
mon = Monitor(mywin)

tub.setVoltages(voltages)

bg = visual.GratingStim(mywin, tex=None, mask=None, units="norm", pos=(0, 0),
                        size=(2, 2), color=eizoGS320.encode_color(color,
                            color), colorSpace="rgb255")
bg.draw()
mywin.flip()

mouse = event.Mouse(mywin)
show = True
while show:
    core.wait(0.01)
    left, middle, right = mouse.getPressed()
    if left:
        core.wait(0.2)
        show=False

Example #4
0
colorspace = (c_float * constants.TRISTIMULUS_SIZE)()
spectrum = (c_float * constants.SPECTRUM_SIZE)()
spec_list = []
color_list = []

#set monitor color
mywin = visual.Window([1024,1536], monitor="mymon", color=(100,100,0),
        screen=1, colorSpace="rgb255", allowGUI=False, units="pix")
    # teststim=SquareStim(mywin,color=500, size=1024)

    #background = eizoGS320.decode_color((mywin.color[0], mywin.color[1], mywin.color[2]))
    #if not(background[0] == background[1]):
    #print("WARNING: There is something wrong with the background color")
teststim = visual.GratingStim(mywin, tex=None, units='norm', pos=(0, 0), size=2,
                          colorSpace=mywin.colorSpace,
                          color=eizoGS320.encode_color(400, 400))
# while color > 0:
#     teststim.draw()
#     mywin.flip()
#     color-=10
#     teststim.setColor(eizoGS320.encode_color(color, color))
#     print("something")
#     if event.getKeys(keyList='escape'):
#         break

# import pdb #@@@
# pdb.set_trace() #@@@
# print 'stop here' #@@@

def measure(color):
    print "Color:" + str(color)
Example #5
0
mywin = visual.Window([1024, 1536],
                      monitor='mymon',
                      color=(155, 155, 17),
                      screen=1,
                      colorSpace="rgb255",
                      allowGUI=False)

calibmonitor = CalibMonitor(eyeone, mywin)
calibtubes = CalibTubes(eyeone)

#calibtubes.is_calibrated = True
calibrate = Calibrate(calibmonitor, calibtubes)
colortable = ColorTable()

color1 = ColorEntry("color850",
                    patch_stim_value=eizoGS320.encode_color(850, 850))
color2 = ColorEntry("color600",
                    patch_stim_value=eizoGS320.encode_color(600, 600))
color3 = ColorEntry("color390",
                    patch_stim_value=eizoGS320.encode_color(390, 390))
color4 = ColorEntry("color621",
                    patch_stim_value=eizoGS320.encode_color(621, 621))

## MONITOR
#calibrate.calibmonitor.startMeasurement()
#calibrate._measureColorEntryMonitor(color1, n=20)
#calibrate._measureColorEntryMonitor(color2, n=20)
#calibrate._measureColorEntryMonitor(color3, n=20)
#
#with open("measured_colors_monitor.txt", "w") as f:
#    for color in (color1, color2, color3):
Example #6
0
from achrolab.colorentry import ColorEntry
from achrolab.calibrate import Calibrate

eyeone = EyeOne()

mywin = visual.Window([1024,1536], monitor='mymon', color=(155,155,17),
        screen=1, colorSpace="rgb255", allowGUI=False)

calibmonitor = CalibMonitor(eyeone, mywin)
calibtubes = CalibTubes(eyeone)

#calibtubes.is_calibrated = True
calibrate = Calibrate(calibmonitor, calibtubes)
colortable = ColorTable()

color1 = ColorEntry("color850", patch_stim_value=eizoGS320.encode_color(850, 850))
color2 = ColorEntry("color600", patch_stim_value=eizoGS320.encode_color(600, 600))
color3 = ColorEntry("color390", patch_stim_value=eizoGS320.encode_color(390, 390))
color4 = ColorEntry("color621", patch_stim_value=eizoGS320.encode_color(621, 621))

## MONITOR
#calibrate.calibmonitor.startMeasurement()
#calibrate._measureColorEntryMonitor(color1, n=20)
#calibrate._measureColorEntryMonitor(color2, n=20)
#calibrate._measureColorEntryMonitor(color3, n=20)
#
#with open("measured_colors_monitor.txt", "w") as f:
#    for color in (color1, color2, color3):
#        f.write(str(color.name)+"\n")
#        f.write(str(color.patch_stim_value)+"\n")
#        f.write(str(color.monitor_xyY)+"\n")
Example #7
0
###### (1.2) up ######
col_list = range(ncol)
xyY_list = list()

print("up")

dataFile = open(
    'D:/software/achrolabutils/calibdata/measurements/monitor_up_' +
    time.strftime("%Y%m%d_%H%M") + '.csv', 'w')

# add headline to files
dataFile.write('color' + ',' + 'x' + ',' + 'y' + ',' + 'Y' + '\n')

for color in col_list:
    xyY_list.append(
        mon.measureGratingStimColor(eizoGS320.encode_color(color, color)))
    print(color)

for i in range(len(col_list)):
    dataFile.write(
        str(col_list[i]) + ',' + str(xyY_list[i][0][0]) + ',' +
        str(xyY_list[i][0][1]) + ',' + str(xyY_list[i][0][2]) + '\n')

# close dataFile
dataFile.close()

###### (1.2) down ######
col_list.reverse()
xyY_list = list()

print("down")
Example #8
0
mywin = visual.Window(
    [1024, 1536], monitor="mymon", color=(100, 100, 0), screen=1, colorSpace="rgb255", allowGUI=False, units="pix"
)
# teststim=SquareStim(mywin,color=500, size=1024)

# background = eizoGS320.decode_color((mywin.color[0], mywin.color[1], mywin.color[2]))
# if not(background[0] == background[1]):
# print("WARNING: There is something wrong with the background color")
teststim = visual.GratingStim(
    mywin,
    tex=None,
    units="norm",
    pos=(0, 0),
    size=2,
    colorSpace=mywin.colorSpace,
    color=eizoGS320.encode_color(400, 400),
)
# while color > 0:
#     teststim.draw()
#     mywin.flip()
#     color-=10
#     teststim.setColor(eizoGS320.encode_color(color, color))
#     print("something")
#     if event.getKeys(keyList='escape'):
#         break

# import pdb #@@@
# pdb.set_trace() #@@@
# print 'stop here' #@@@

# for all three methods (up, down, random)

###### (1.2) up ######
col_list = range(ncol)
xyY_list = list()

print("up")

dataFile = open('D:/software/achrolabutils/calibdata/measurements/monitor_up_' +
        time.strftime("%Y%m%d_%H%M") + '.csv', 'w')

# add headline to files
dataFile.write('color' + ',' + 'x' + ',' + 'y' + ',' + 'Y' + '\n')

for color in col_list:
    xyY_list.append(mon.measureGratingStimColor(eizoGS320.encode_color(color,
        color)))
    print(color)

for i in range(len(col_list)):
    dataFile.write(str(col_list[i]) + ',' + str(xyY_list[i][0][0]) + ',' +
            str(xyY_list[i][0][1]) + ',' + str(xyY_list[i][0][2]) + '\n')

# close dataFile
dataFile.close()

###### (1.2) down ######
col_list.reverse()
xyY_list = list()

print("down")