commit 10/31/2015

This commit is contained in:
2015-10-31 00:00:00 -06:00
committed by Anthony Correa
parent 8d45de4f2d
commit 5e9b03a651
21 changed files with 3109 additions and 395 deletions

View File

@@ -65,15 +65,24 @@ class Camera_Debug():
#camera debug 2 uses actual camera
class Camera_Debug2():
def __init__(self, low_quality_resolution,
low_quality_compression_pct,
high_quality_resolution=None,
high_qualitycompression_pct=85):
def __init__(self, low_quality_resolution=(320,240),
low_quality_compression_pct=5,
high_quality_resolution=(2592,1944),
high_quality_compression_pct=85,
**kwargs):
logger.debug("Initializing camera")
time.sleep(1)
self.low_quality_resolution = low_quality_resolution
self.low_quality_compression_pct = low_quality_compression_pct
self._cam = picamera.PiCamera()
self.high_quality_resolution = high_quality_resolution
self.high_quality_compression_pct = high_quality_compression_pct
self.kwargs=kwargs
self._cam = picamera.PiCamera(resolution=high_quality_resolution)
# if "vflip" in kwargs.keys():
for k in kwargs.keys():
setattr(self._cam, k, kwargs.get(k))
logger.debug("Camera intialized")
pass
@@ -81,22 +90,33 @@ class Camera_Debug2():
def status (self):
return (0, "Camera functioning properly")
def capture (self, no_low_quality=False, no_high_quality=False):
def capture (self, no_low_quality=False, no_high_quality=False, **kwargs):
#todo image adjustments
img_hi = None
img_lo = None
if not no_high_quality:
logger.debug('Taking high quality photo')
self._cam.capture("temp_img_hi.jpg")
self._cam.capture("temp_img_hi.jpg",
resize=self.high_quality_resolution,
quality=self.high_quality_compression_pct,
# **kwargs
)
img_hi = open("temp_img_hi.jpg", 'rb')
logger.debug('High quality photo taken, file: {}'.format(img_hi))
with open("temp_img_hi.jpg", 'rb') as f:
img_hi = f.read()
logger.debug('High quality photo taken')
if not no_low_quality:
logger.debug('Taking low quality photo (Resolution: {}, JPEG Quality: {}%'.format(self.low_quality_resolution, self.low_quality_compression_pct))
time.sleep(1)
logger.debug('Taking low quality photo (Resolution: {}, JPEG Quality: {}%)'.format(self.low_quality_resolution, self.low_quality_compression_pct))
self._cam.capture("temp_img_lo.jpg",
resize=self.low_quality_resolution,
quality=self.low_quality_compression_pct)
img_lo = open("temp_img_lo.jpg", 'rb')
logger.debug('Low quality photo taken, file: {}'.format(img_lo))
quality=self.low_quality_compression_pct,
# **kwargs
)
with open("temp_img_lo.jpg", 'rb') as f:
img_lo = f.read()
logger.debug('Low quality photo taken')
return ({"hi":img_hi,
"lo":img_lo})