Stap 3: De sjabloon kan verwerken elk pad.
NodeBox kunt maken van meer complexe vormen zoals vreemde tekens en indringers.
Daarnaast is er een zipbestand met een soortgelijke procedure voor lezing in een afbeelding. Het werkt met een ander bestand voor de python dat een eenvoudige rand detectie procedure doet. Zie het zip-bestand voor meer informatie.
importeren uit javax.imageio ImageIO
vanuit java.io bestand importeren
importeren uit nodebox.graphics punt
importeren van math sqrt
importeren van os
vanuit os.path importeren abspath
def pixel(c,c1,c2,edge):
r, g, b = c [0], c [1], c [2]
R1, g1, b1 = c1 [0], c1 [1], c1 [2]
R2, g2, b2 = c2 [0], c2 [1], c2 [2]
Als (sqrt((r-r1)*(r-r1)+(g-g1)*(g-g1)+(b-b1)*(b-b1)) > = rand) of (sqrt((r-r2)*(r-r2)+(g-g2)*(g-g2)+(b-b2)*(b-b2)) > = rand):
True retourneren
anders:
False retourneren
def cook (foto, sens, sg):
f = File(abspath(foto))
bi = ImageIO.read(f)
raster = bi.raster
w = raster.width
h = raster.height
Seg = sg
alle =]
voor ik in xrange(0,w,seg):
voor j in xrange(0,h,seg):
c = bi.raster.getPixel(i,j,[0.0,0.0,0.0])
Try:
C1 = bi.raster.getPixel(i+1,j,[0.0,0.0,0.0])
C2 = bi.raster.getPixel(i,j+1,[0.0,0.0,0.0])
met uitzondering van:
Pass
Als pixel(c,c1,c2,sens):
all.Append(Point(i,j))
alle