New ScreenPanel
This commit is contained in:
42
script/image.py
Executable file
42
script/image.py
Executable file
@@ -0,0 +1,42 @@
|
||||
###################################################################################################
|
||||
# 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())
|
||||
Reference in New Issue
Block a user