Piszę kod, którego częścią jest odczytywanie źródła obrazu i wyświetlanie go na ekranie, z którego użytkownik może korzystać. Potrzebuję również wyostrzonych danych obrazu. Używam następujących do odczytu danych i wyświetlić go w pyGame
Jak zaprezentować numpy array na powierzchni pygame?
def image_and_sharpen_array(file_name):
#read the image data and return it, with the sharpened image
image = misc.imread(file_name)
blurred = ndimage.gaussian_filter(image,3)
edge = ndimage.gaussian_filter(blurred,1)
alpha = 20
out = blurred + alpha*(blurred - edge)
return image,out
#get image data
scan,sharpen = image_and_sharpen_array('foo.jpg')
w,h,c = scan.shape
#setting up pygame
pygame.init()
screen = pygame.display.set_mode((w,h))
pygame.surfarray.blit_array(screen,scan)
pygame.display.update()
a obraz jest wyświetlany na ekranie tylko obraca i rewersu. Czy wynika to z różnic między misc.imread
i pyGame
? Czy to z powodu czegoś złego w moim kodzie?
Czy jest inny sposób na zrobienie tego? Większość rozwiązania, które przeczytałem, polegało na zapisaniu liczby, a następnie przeczytaniu jej za pomocą `pyGame '.