import java.awt.Rectangle as Rectangle import ch.psi.pshell.imaging.Data as Data class Exposure(Writable): def write(self,pos): #cam.setExposure(pos) img.camera.setExposure(pos) exposure=Exposure() class Contrast(Readable): def read(self): data = img.getData() #roi = Data(data.getRectSelection(500,300,700,600), False) return data.getGradientVariance(False, Rectangle(500,300,700,600)) contrast=Contrast() #a= lscan(exposure,img.getContrast(), 0.5, 1.0, 0.01, 0.5) #a= lscan(exposure,contrast, 0.2, 0.4, 0.01, 0.7) a= lscan(exposure,contrast, 10.0, 500.0, 10.0, 0.7) (n, m, s) = fit(a.getReadable(0), xdata=a.getPositions(0)) if m is not None: print "Setting exposure = ", m exposure.write(m)