2014-01-25 1 views
0

나는이 코드를 입력하면 : 나는 오류가오류 동안

import pygame.camera 
pygame.camera.init() 
cam = pygame.camera.Camera(pygame.camera.list_cameras()[0]) 
cam.start() 
img = cam.get_image() 
import pygame.image 
pygame.image.save(img, "photo.bmp") 
pygame.camera.quit() 

을 :하지만 난 .... 불을 내 웹캠 빛을 볼 수

Traceback (most recent call last): 
    File "C:\Users\ibrahim\Desktop\Bill2.py", line 7, in <module> 
    pygame.image.save(img, "photo.bmp") 
TypeError: must be pygame.Surface, not None 

답변

3

플랫폼이 win32라고 가정하기 때문에 파이 게임 가져 오기 Camera 클래스는 Python27\Lib\site-packages\pygame\_camera_vidcapture.py에 있습니다. Camera.get_image() 메서드가 표면을 반환하지 않는 것 같습니다.이 메서드는 내부적으로 아직 초기화되지 않은 pygame.image 모듈을 사용하기 때문일 수 있습니다.

먼저 모듈을 초기화 한 다음 이미지를 가져 와서 마지막으로 저장하는 것이 좋습니다. 카메라 개체를 삭제하고 모듈을 종료하는 것이 좋습니다.

import pygame.camera 
import pygame.image 

pygame.init() 
pygame.camera.init() 
cam = pygame.camera.Camera(pygame.camera.list_cameras()[0]) 
cam.start() 
img = cam.get_image() 
pygame.image.save(img, "photo.bmp") 
del cam 
pygame.camera.quit() 
pygame.quit() 

PS : 내 컴퓨터에서 나는 내 웹캠에 대한 작업을 수행하기 때문에, Camera.__init__에 문 self.dev.setresolution(width, height)을 언급했다.

+0

역 추적 (마지막으로 가장 최근 통화) : 파일 "C : \ 사용자 \ 이브라힘 바탕 화면 \ 파이썬 \의 transpose.py \" pygame.image.save에서, 라인 (9), (IMG, "photo.bmp") TypeError : pygame.Surface 여야하며 None이 아닙니다.이 오류가 발생합니다. –