Exemplo n.º 1
0
 def applyFilter(self, aImage):
     oldtime = time.time()
     # intialize a new filtered image
     new_image = Image.new('RGB', aImage.size)
     new_image_list = []
     #get the pixels list from the original image
     #pixels = aImage.getdata()
     
     pixels = Lib.to2d(aImage)
     
     height = len(pixels)
     width = len(pixels[0])
     
     print height, width
     n = 0
     p = 1
     for x in range(width):
         for y in range(height):
             
             r = int(pixels[y][x][0]*self.amount)
             g = int(pixels[y][x][1]*self.amount)
             b = int(pixels[y][x][2]*self.amount)
             
             if Lib.isprime(n):
                 r=g=b=0
                 p+=1
             
             new_pixel = (r,g,b)
             new_image_list.append(new_pixel)
             n+=1
             
     new_image.putdata(new_image_list)
     timetaken = time.time()-oldtime
     print "primes:", n-p, ", out of", n , "pixels", ", it took", timetaken, "seconds"
     return new_image
Exemplo n.º 2
0
 def applyFilter(self, aImage):
     # intialize a new filtered image
     new_image = Image.new('RGB', aImage.size)
     new_image_list = []
     #get the pixels list from the original image
     #pixels = aImage.getdata()
     
     pixels = Lib.to2d(aImage)
     
     height = len(pixels)
     width = len(pixels[0])
     
     for x in range(width):
         for y in range(height):
                 
             if x > self.size and x < (width - self.size) and \
             y > self.size and y < (height - self.size):
                 r = int(pixels[y][x][0])
                 g = int(pixels[y][x][1])
                 b = int(pixels[y][x][2])
             else:
                 r = int(self.color[0]*255)
                 g = int(self.color[1]*255)
                 b = int(self.color[2]*255)
             
             new_pixel = (r,g,b)
             new_image_list.append(new_pixel)
             
     new_image.putdata(new_image_list)
     return new_image
Exemplo n.º 3
0
 def applyFilter(self, aImage):
     # intialize a new filtered image
     new_image = Image.new('RGB', aImage.size)
     new_image_list = []
     #get the pixels list from the original image
     #pixels = aImage.getdata()
     
     pixels = Lib.to2d(aImage)
     
     height = len(pixels)
     width = len(pixels[0])
     
     hardness = 1
     
     for x in range(width):
         for y in range(height):
             
             dist = Lib.distanceFromPoint(x, y, width/2, height/2) / math.sqrt((width/2)**2 + (height/2)**2)
             
             r = int(pixels[y][x][0]*(self.amount-dist))
             g = int(pixels[y][x][1]*(self.amount-dist))
             b = int(pixels[y][x][2]*(self.amount-dist))
             
             #r = int(r**hardness)
             #g = int(g**hardness)
             #b = int(b**hardness)
             
             new_image_list.append((r,g,b))
             
     new_image.putdata(new_image_list)
     return new_image