################################################################################################### # Demonstrate creation of an image filters and new source based on filter. # Also demonstrate creation of image histogram and use of overlays. ################################################################################################### import ch.psi.pshell.imaging.Filter as Filter from ch.psi.pshell.imaging.Utils import * from ch.psi.pshell.imaging.Overlays import * import ch.psi.pshell.imaging.Pen as Pen last = None class MyFilter(Filter): def process(self, image, data): global last image = grayscale(image) i=None if last is not None: i = sub(image,last, False) i = rescale(i,100.0, 0, True) i = add(i, last, True) i = rescale(i,10.0, 0, True) last = image return i def translate2(image, minV, maxV,inPlace): range = float(maxV - minV) scale = (255.0 / range) if (range > 0) else 1.0 offset = -minV return rescale(image, scale,offset, inPlace) class MyFilter2(Filter): def process(self, image, data): image = grayscale(image) image = translate(image, 100, 200, True) #image = rescale(image, 1.0, 200.0, False) return image #Setting the filter to a source img.setFilter(MyFilter2())