Size: 2080
Comment:
|
Size: 465
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
#acl AdminGroup:read,write | #acl AdminGroup:read,write EditorGroup:read All:read |
Line 6: | Line 6: |
SiaProgrammingPython |
|
Line 8: | Line 10: |
= Fourier transformation = | [[/Statistics]] |
Line 10: | Line 12: |
= Statistics = | [[/Texture]] |
Line 12: | Line 14: |
= Convolution = | [[/GammaFunction]] |
Line 14: | Line 16: |
= Filter = == Linear shift invariant == == Ranking filter == == Recursive filter == |
[[/Classification]] |
Line 19: | Line 18: |
= Sampling and interpolation = | [[/Convolution]] |
Line 21: | Line 20: |
= Geometrical transformation = | [[/Geometric transformation]] |
Line 23: | Line 22: |
{{attachment:affine_transform_orig.png}} {{attachment:affine_transform.png}} | [[/K-means algorithm and Vector Quantization]] |
Line 25: | Line 24: |
{{{#!python from scipy import * from scipy.ndimage import * from pylab import * from scipy import linalg |
[[/Filter]] |
Line 31: | Line 26: |
[[/Watershed-Segmentation]] | |
Line 32: | Line 28: |
def mapping_func((y,x)): # Uebergabe der Koordinaten als Tupel v0=array([y,x,1]).transpose() v1=dot(A,v0) # globale Variable A ist im Hauptprogramm deklariert return (v1[0],v1[1]) def display(B,n,t,y00,x00,y01,x01,y02,x02): figure(n) imshow(B,origin='lower',interpolation='nearest') text(y00,x00,'y0,x0') text(y01,x01,'y1,x1') text(y02,x02,'y2,x2') title(t) colorbar() show() Y,X=512,512 B0=zeros((Y,X),float) # Punkte im Originalbild y00,x00,y01,x01,y02,x02=200,200,200,300,300,300 # Punkte im transformierten Bild y10,x10,y11,x11,y12,x12=200,200,100,250,500,400 B0[y00:y02,x00:x02]=1 # Rechteck mit eins gefuellt sigma=1 B0=gaussian_filter(B0,sigma) # Simuliere Aufnahmevorgang (Verunschaerfen) close('all') display(B0,1,'Original',y00,x00,y01,x01,y02,x02) P0=array([[x00, x01, x02],[y00,y01,y02],[1.0,1.0,1.0]]) P1=array([[x10, x11, x12],[y10,y11,y12],[1.0,1.0,1.0]]) # Berechne Transformationsmatrix A=dot(P1,linalg.inv(P0)) A=linalg.inv(A) # Hier wird die Inverse von A berechnet, # da geometric_transform "rueckwaerts" definiert ist B1=geometric_transform(B0,mapping_func,prefilter=True,order=3,output_shape=(700,700)) display(B1,2,'Transformiert',y10,x10,y11,x11,y12,x12)}}} = Multiscale representation = = Edge detection = = Texture = = Segmentation = = Inverse filtering = = Morphology = = Shape = = Classification = |
[[/Morphology]] |
This session provides a brief overview about SciPy image processing functions