#!/usr/bin/env python 
 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  numpy  as  np 
 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# copied from common.transformations/camera.py 
 
						 
					
						
							
								
							 
							
								
									
										 
								
							 
							
								 
							
							
								eon_focal_length  =  910.0   # pixels 
 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								eon_dcam_focal_length  =  860.0   # pixels 
 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
									
										 
								
							 
							
								 
							
							
								webcam_focal_length  =  - 908.0 / 1.5   # pixels 
 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								eon_intrinsics  =  np . array ( [ 
 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  [ eon_focal_length ,    0. ,    1164 / 2. ] , 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  [   0. ,   eon_focal_length ,   874 / 2. ] , 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  [   0. ,     0. ,      1. ] ] ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								eon_dcam_intrinsics  =  np . array ( [ 
 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  [ eon_dcam_focal_length ,    0 ,    1152 / 2. ] , 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  [   0 ,   eon_dcam_focal_length ,   864 / 2. ] , 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  [   0 ,     0 ,      1 ] ] ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								webcam_intrinsics  =  np . array ( [ 
 
						 
					
						
							
								
							 
							
								
									
										 
								
							 
							
								 
							
							
								  [ webcam_focal_length ,    0. ,    1280 / 2 / 1.5 ] , 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  [   0. ,   webcam_focal_length ,   720 / 2 / 1.5 ] , 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  [   0. ,     0. ,      1. ] ] ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  __name__  ==  " __main__ " : 
 
						 
					
						
							
								
							 
							
								
									
										 
								
							 
							
								 
							
							
								  import  cv2   # pylint: disable=import-error 
  
						 
					
						
							
								
							 
							
								
									
										 
								
							 
							
								 
							
							
								  trans_webcam_to_eon_rear  =  np . dot ( eon_intrinsics ,  np . linalg . inv ( webcam_intrinsics ) ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  trans_webcam_to_eon_front  =  np . dot ( eon_dcam_intrinsics ,  np . linalg . inv ( webcam_intrinsics ) ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  print ( " trans_webcam_to_eon_rear: \n " ,  trans_webcam_to_eon_rear ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  print ( " trans_webcam_to_eon_front: \n " ,  trans_webcam_to_eon_front ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  cap  =  cv2 . VideoCapture ( 1 ) 
  
						 
					
						
							
								
							 
							
								
									
										 
								
							 
							
								 
							
							
								  cap . set ( cv2 . CAP_PROP_FRAME_WIDTH ,  853 ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  cap . set ( cv2 . CAP_PROP_FRAME_HEIGHT ,  480 ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  while  ( True ) : 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    ret ,  img  =  cap . read ( ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  ret : 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      # img = cv2.warpPerspective(img, trans_webcam_to_eon_rear, (1164,874), borderMode=cv2.BORDER_CONSTANT, borderValue=0) 
  
						 
					
						
							
								
							 
							
								
									
										 
								
							 
							
								 
							
							
								      img  =  cv2 . warpPerspective ( img ,  trans_webcam_to_eon_front ,  ( 1164 ,  874 ) ,  borderMode = cv2 . BORDER_CONSTANT ,  borderValue = 0 ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      print ( img . shape ,  end = ' \r ' ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      cv2 . imshow ( ' preview ' ,  img ) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      cv2 . waitKey ( 10 )