|
@@ -2,7 +2,7 @@
|
|
# _*_ coding:utf-8 _*_
|
|
# _*_ coding:utf-8 _*_
|
|
|
|
|
|
"""
|
|
"""
|
|
- Copyright: 2016-2018 ROS小课堂 www.corvin.cn
|
|
|
|
|
|
+ Copyright: 2016-2020 ROS小课堂 www.corvin.cn
|
|
Author: corvin
|
|
Author: corvin
|
|
Description:
|
|
Description:
|
|
This is a demo of running face recognition on live video from your webcam. It includes some
|
|
This is a demo of running face recognition on live video from your webcam. It includes some
|
|
@@ -15,7 +15,7 @@
|
|
20181207: 新增dynamic_reconfigure来动态配置节点参数.
|
|
20181207: 新增dynamic_reconfigure来动态配置节点参数.
|
|
"""
|
|
"""
|
|
import rospy
|
|
import rospy
|
|
-import os,cv2
|
|
|
|
|
|
+import os, cv2
|
|
import face_recognition
|
|
import face_recognition
|
|
from arduino_servo_connect.srv import *
|
|
from arduino_servo_connect.srv import *
|
|
from arduino_servo_connect.msg import *
|
|
from arduino_servo_connect.msg import *
|
|
@@ -107,7 +107,7 @@ class FaceLocation():
|
|
self.servo_x_ID = rospy.get_param("~servo_x_id", 3)
|
|
self.servo_x_ID = rospy.get_param("~servo_x_id", 3)
|
|
self.servo_y_ID = rospy.get_param("~servo_y_id", 4)
|
|
self.servo_y_ID = rospy.get_param("~servo_y_id", 4)
|
|
self.servo_x_org_deg = rospy.get_param("~default_servo_x_deg", 90)
|
|
self.servo_x_org_deg = rospy.get_param("~default_servo_x_deg", 90)
|
|
- self.servo_y_org_deg = rospy.get_param("~default_servo_y_deg", 0)
|
|
|
|
|
|
+ self.servo_y_org_deg = rospy.get_param("~default_servo_y_deg", 90)
|
|
self.servo_x_pose = self.servo_x_org_deg
|
|
self.servo_x_pose = self.servo_x_org_deg
|
|
self.servo_y_pose = self.servo_y_org_deg
|
|
self.servo_y_pose = self.servo_y_org_deg
|
|
|
|
|
|
@@ -167,13 +167,13 @@ class FaceLocation():
|
|
|
|
|
|
def check_move_y(self, center_y, move_up, move_down):
|
|
def check_move_y(self, center_y, move_up, move_down):
|
|
if center_y < move_up:
|
|
if center_y < move_up:
|
|
- if self.servo_y_pose < self.servo_y_max_pose:
|
|
|
|
- self.servo_y_pose += self.servo_move_step
|
|
|
|
|
|
+ if self.servo_y_pose > self.servo_y_min_pose:
|
|
|
|
+ self.servo_y_pose -= self.servo_move_step
|
|
self.move_servo(self.servo_y_ID, self.servo_y_pose, self.servo_move_delay)
|
|
self.move_servo(self.servo_y_ID, self.servo_y_pose, self.servo_move_delay)
|
|
rospy.loginfo("Move up:%d" %(self.servo_y_pose))
|
|
rospy.loginfo("Move up:%d" %(self.servo_y_pose))
|
|
elif center_y > move_down:
|
|
elif center_y > move_down:
|
|
- if self.servo_y_pose > self.servo_y_min_pose:
|
|
|
|
- self.servo_y_pose -= self.servo_move_step
|
|
|
|
|
|
+ if self.servo_y_pose < self.servo_y_max_pose:
|
|
|
|
+ self.servo_y_pose += self.servo_move_step
|
|
self.move_servo(self.servo_y_ID, self.servo_y_pose, self.servo_move_delay)
|
|
self.move_servo(self.servo_y_ID, self.servo_y_pose, self.servo_move_delay)
|
|
rospy.loginfo("Move down:%d" %(self.servo_y_pose))
|
|
rospy.loginfo("Move down:%d" %(self.servo_y_pose))
|
|
#else:
|
|
#else:
|
|
@@ -205,7 +205,7 @@ if __name__ == '__main__':
|
|
try:
|
|
try:
|
|
face_location = FaceLocation()
|
|
face_location = FaceLocation()
|
|
rospy.spin()
|
|
rospy.spin()
|
|
- except Exception, e:
|
|
|
|
|
|
+ except Exception as e:
|
|
rospy.logerr("%s", str(e))
|
|
rospy.logerr("%s", str(e))
|
|
os._exit(1)
|
|
os._exit(1)
|
|
|
|
|