<gh_stars>1-10
#!/usr/bin/env python
# -*- coding: utf-8 -*-
    
import cv2
import rospy
import numpy as np
from sensor_msgs.msg import Image
# OpenCV를 ROS에서 사용할 수 있게 해주는 모듈
from cv_bridge import CvBridge
print("connect")
bridge = CvBridge()
# 이미지를 담을 빈 배열 생성
cv_detect_image = np.empty(shape=[0])
cv_seg_image = np.empty(shape=[0])

# usb 카메라로 부터 받은 image 토픽을 처리하는 콜백 함수 정의

def detect_img_callback(data):
    global cv_detect_image
    # 카메라로부터 받은 img 데이터를 OpenCV로 처리를 할 수 있게 변환해주는 함수 사용
    cv_detect_image = bridge.imgmsg_to_cv2(data, "rgb8")

def seg_img_callback(data):
    global cv_seg_image
    # 카메라로부터 받은 img 데이터를 OpenCV로 처리를 할 수 있게 변환해주는 함수 사용
    cv_seg_image = bridge.imgmsg_to_cv2(data, "rgb8")
    #cv_seg_image = cv2.resize(cv_seg_image, dsize=(0, 0), fx=1, fy=4, interpolation=cv2.INTER_LINEAR)
    cv_seg_image = cv2.resize(cv_seg_image, dsize=(480, 360), interpolation=cv2.INTER_AREA)


# 노드 생성
rospy.init_node('image_visualizer')
# 구독자 생성
rospy.Subscriber("/TFF/detections_image_topic", Image, detect_img_callback)
rospy.Subscriber("/carla/ego_vehicle/camera/semantic_segmentation/front/image_segmentation", Image, seg_img_callback)

  
while not rospy.is_shutdown():
    #if cv_detect_image.size != (368*640*3):
    if cv_detect_image.size != (360*480*3):
        continue
        
    cv2.namedWindow('detect_image')
    cv2.imshow("detect_image", cv_detect_image)
    cv2.namedWindow('seg_image')
    cv2.imshow("seg_image", cv_seg_image)
    #print("why does it work?")
    cv2.waitKey(25)


#!/usr/bin/env python
# -*- coding: utf-8 -*-
    
import cv2
import rospy
import numpy as np
from sensor_msgs.msg import Image
# OpenCV를 ROS에서 사용할 수 있게 해주는 모듈
from cv_bridge import CvBridge
print("connect")
bridge = CvBridge()
# 이미지를 담을 빈 배열 생성
cv_detect_image = np.empty(shape=[0])
cv_seg_image = np.empty(shape=[0])

# usb 카메라로 부터 받은 image 토픽을 처리하는 콜백 함수 정의

def detect_img_callback(data):
    global cv_detect_image
    # 카메라로부터 받은 img 데이터를 OpenCV로 처리를 할 수 있게 변환해주는 함수 사용
    cv_detect_image = bridge.imgmsg_to_cv2(data, "rgb8")

def seg_img_callback(data):
    global cv_seg_image
    # 카메라로부터 받은 img 데이터를 OpenCV로 처리를 할 수 있게 변환해주는 함수 사용
    cv_seg_image = bridge.imgmsg_to_cv2(data, "rgb8")
    #cv_seg_image = cv2.resize(cv_seg_image, dsize=(0, 0), fx=1, fy=4, interpolation=cv2.INTER_LINEAR)
    cv_seg_image = cv2.resize(cv_seg_image, dsize=(480, 360), interpolation=cv2.INTER_AREA)


# 노드 생성
rospy.init_node('image_visualizer')
# 구독자 생성
rospy.Subscriber("/TFF/detections_image_topic", Image, detect_img_callback)
rospy.Subscriber("/carla/ego_vehicle/camera/semantic_segmentation/front/image_segmentation", Image, seg_img_callback)

  
while not rospy.is_shutdown():
    #if cv_detect_image.size != (368*640*3):
    if cv_detect_image.size != (360*480*3):
        continue
        
    cv2.namedWindow('detect_image')
    cv2.imshow("detect_image", cv_detect_image)
    cv2.namedWindow('seg_image')
    cv2.imshow("seg_image", cv_seg_image)
    #print("why does it work?")
    cv2.waitKey(25)
#!/usr/bin/env python # -*- coding: utf-8 -*- # OpenCV를 ROS에서 사용할 수 있게 해주는 모듈 # 이미지를 담을 빈 배열 생성 # usb 카메라로 부터 받은 image 토픽을 처리하는 콜백 함수 정의 # 카메라로부터 받은 img 데이터를 OpenCV로 처리를 할 수 있게 변환해주는 함수 사용 # 카메라로부터 받은 img 데이터를 OpenCV로 처리를 할 수 있게 변환해주는 함수 사용 #cv_seg_image = cv2.resize(cv_seg_image, dsize=(0, 0), fx=1, fy=4, interpolation=cv2.INTER_LINEAR) # 노드 생성 # 구독자 생성 #if cv_detect_image.size != (368*640*3): #print("why does it work?")