示例#1
0
    def initialize_publsr_topics(self):

        # Initialize all the publisher topics
        self.pnt_cld_dvc_publr_obj = ecal.publisher(
            json_data['pointcloud_device_response'])
        self.pnt_cld_data_publr_obj = ecal.publisher(
            json_data['pointcloud_data_response'])
        self.pnt_cld_ready_obj = ecal.publisher(
            json_data['pointcloud_begin_response'])
def publ_multiple_signal_names():

    print "Publish bsig signal names......."

    ecal.initialize(sys.argv, "Python Signal name publisher")
    BSIG_INFO_OBJ = Radar_pb2.BsigDataRequest()
    publisher_roi_obj = ecal.publisher(topic_name="BsigSignalNames")
    # sig_name = "SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Longitudinal.MotVar.Velocity"
    sig_name_lst = ['SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Longitudinal.MotVar.Velocity',
                    'MTS.Package.TimeStamp',
     'SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Longitudinal.MotVar.Accel',
     'SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Lateral.YawRate.YawRate',
     'SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Lateral.SlipAngle.SideSlipAngle',

     'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Kinematic.fDistX',
     'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Kinematic.fDistY',
     'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Kinematic.fVrelX',
     'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Legacy.uiLifeTime',
     'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Attributes.eDynamicProperty',

     'SIM VFB ALL.AlgoSenCycle.gSI_OOI_LIST.SI_OOI_LIST[%].object_id',
     'SIM VFB ALL.AlgoSenCycle.gSI_OOI_LIST.SI_OOI_LIST[%].long_displacement',
     'SIM VFB ALL.AlgoSenCycle.gSI_OOI_LIST.SI_OOI_LIST[%].lat_displacement_to_curvature']

    BSIG_INFO_OBJ.bsigPath = bsig_path
    BSIG_INFO_OBJ.objectIdCount = 100
    # BSIG_INFO_OBJ.timestamp = 1465391170943194
    BSIG_INFO_OBJ.timestamp = 8308331816
    for sig_name in sig_name_lst:
        BSIG_INFO_OBJ.signalNames.append(sig_name)

    # while ecal.ok():
    #     print("BSIG_INFO_OBJ.SerializeToString() :: ", BSIG_INFO_OBJ.SerializeToString())
    time.sleep(1)
    publisher_roi_obj.send(BSIG_INFO_OBJ.SerializeToString())
    def __init__(self):

        # Subscribe to the eCAL message to get the bsig path and the
        # signal names

        # self.bsig_path = bsig_pth
        #
        ecal.initialize(sys.argv, "Python signal value publisher")
        # Subscribe to RadarSignalRequest topic
        self.bsig_subscr_obj = ecal.subscriber(topic_name="BsigSignalNames")
        self.bsig_pub_obj = ecal.publisher(topic_name="BsigSignalValues")
        self.bsig_tmstamp_lst = []
        self.sig_name_lst = []
        self.subscribe_ecal_msgs()
def publ_signal_names():

    print("Publish tracking data......")

    ecal.initialize(sys.argv, "Tracker data")

    publisher_roi_obj = ecal.publisher(topic_name="SR_Request")
    label_req_obj = AlgoInterface_pb2.LabelRequest()
    # image_path = r'D:\Work\2018\code\Tensorflow_code\Tracker\DLBasedSmartAnnotation\data\BlurCar2\img\0001.jpg'
    image_path = r'D:\Work\2018\code\Tensorflow_code\Tracker\DLBasedSmartAnnotation\data\LT52\img\0001.jpeg'
    # read the image
    # img = cv2.imread(image_path, cv2.IMREAD_COLOR)
    img = cv2.imread(image_path, cv2.IMREAD_COLOR)
    img_encoded = cv2.imencode('.png', img)[1].tostring()
    # print("img_encoded ::", img)
    img_str = img_encoded
    # Read its respective coordinates
    gt_boxes_path = r'D:\Work\2018\code\Tensorflow_code\Tracker\DLBasedSmartAnnotation\data\BlurCar2\groundtruth_rect.txt'
    image_nmber_idx = 1 - 1
    with open(gt_boxes_path, 'r') as f:
        lines = f.readlines()
    line = lines[image_nmber_idx]
    img_trackid_lst = [2]
    x, y, w, h = [int(x) for x in line.split()]
    # 227	207	122	99
    # print("ordinate:", x, y, w, h)
    # (xmin, ymin, xmax, ymax) = (227, 207, 349, 306)
    # (xmin, ymin, xmax, ymax) = (227, 204, 349, 306)
    (xmin, ymin, xmax, ymax) = (622, 180, 660, 335)
    # xmin = 227
    # ymin = 207
    # xmax = 349
    # ymax = 306
    print("ordinate::", xmin, ymin, xmax, ymax)
    label_req_obj.NextImg.imageData = img_str
    for evy_img_trkid in img_trackid_lst:
        # Assign the trackid here
        attrib_typ_obj = label_req_obj.CurrentAttr.add()
        attrib_typ_obj.trackID = evy_img_trkid
        attrib_typ_obj.trackername = "ADNet"
        # Loop in to send across the coordinates
        roi_min_obj = attrib_typ_obj.ROI.add()
        roi_min_obj.X = xmin
        roi_min_obj.Y = ymin
        roi_max_obj = attrib_typ_obj.ROI.add()
        roi_max_obj.X = xmax
        roi_max_obj.Y = ymax

    time.sleep(1)
    publisher_roi_obj.send(label_req_obj.SerializeToString())
def publ_signal_names():

    print "Publish bsig signal names......."

    ecal.initialize(sys.argv, "Python Signal name publisher")
    BSIG_INFO_OBJ = Radar_pb2.BsigDataRequest()
    publisher_roi_obj = ecal.publisher(topic_name="BsigSignalNames")
    sig_name_lst = ['MTS.Package.TimeStamp']
    BSIG_INFO_OBJ.bsigPath = bsig_path
    BSIG_INFO_OBJ.objectIdCount = 40
    BSIG_INFO_OBJ.timestamp = -1
    for sig_name in sig_name_lst:
        BSIG_INFO_OBJ.signalNames.append(sig_name)
    # while ecal.ok():
    #     print("BSIG_INFO_OBJ.SerializeToString() :: ", BSIG_INFO_OBJ.SerializeToString())
    time.sleep(1)
    publisher_roi_obj.send(BSIG_INFO_OBJ.SerializeToString())
示例#6
0
def publ_signal_names():

    print "Publish bsig signal names......."

    ecal.initialize(sys.argv, "Python Signal name publisher")

    BSIG_INFO_OBJ = Radar_pb2.BsigDataRequest()

    publisher_roi_obj = ecal.publisher(topic_name="BsigSignalNames")

    bsig_path = r"D:\Work\2018\code\LT5G\OLT\Radar_labelling_bsig\bsig_readers\Continuous_2014.05.15_at_08.48.40.bsig"
    # bsig_path = r"D:\Work\2018\code\LT5G\OLT\Radar_labelling_bsig\bsig_readers\20160608_1306_{4556C7A6-7F27-4A91-923E-4392C9785675}.bsig"
    # sig_name = "SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Longitudinal.MotVar.Velocity"
    sig_name_lst = [
        'SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Longitudinal.MotVar.Velocity',
        'MTS.Package.TimeStamp',
        'SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Longitudinal.MotVar.Accel',
        'SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Lateral.YawRate.YawRate',
        'SIM VFB ALL.DataProcCycle.ObjSyncEgoDynamic.Lateral.SlipAngle.SideSlipAngle',
        'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Kinematic.fDistX',
        'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Kinematic.fDistY',
        'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Kinematic.fVrelX',
        'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Legacy.uiLifeTime',
        'SIM VFB ALL.DataProcCycle.EMPublicObjData.Objects[%].Attributes.eDynamicProperty',
        'SIM VFB ALL.AlgoSenCycle.gSI_OOI_LIST.SI_OOI_LIST[%].object_id',
        'SIM VFB ALL.AlgoSenCycle.gSI_OOI_LIST.SI_OOI_LIST[%].long_displacement',
        'SIM VFB ALL.AlgoSenCycle.gSI_OOI_LIST.SI_OOI_LIST[%].lat_displacement_to_curvature'
    ]

    # sig_name_lst = ['MTS.Package.TimeStamp'
    #                 ]
    BSIG_INFO_OBJ.bsigPath = bsig_path
    BSIG_INFO_OBJ.objectIdCount = 40
    for sig_name in sig_name_lst:
        BSIG_INFO_OBJ.signalNames.append(sig_name)

    # while ecal.ok():
    #     print("BSIG_INFO_OBJ.SerializeToString() :: ", BSIG_INFO_OBJ.SerializeToString())
    time.sleep(1)
    publisher_roi_obj.send(BSIG_INFO_OBJ.SerializeToString())
示例#7
0
def publ_coord_multiple_obj():

    print("Publish tracking data......")

    ecal.initialize(sys.argv, "Tracker data")

    publisher_roi_obj = ecal.publisher(topic_name="SR_Request")
    label_req_obj = algointerface_pb2.LabelRequest()
    image_path = r'D:\Work\2018\code\LT5G\ticket_folders\Images\MFC4xxLongImageRight_7674957039.jpeg'
    img = cv2.imread(image_path, cv2.IMREAD_COLOR)
    img_encoded = cv2.imencode('.png', img)[1].tostring()
    # print("img_encoded ::", img)
    img_str = img_encoded
    img_trackid_lst = [2, 3]
    coordinate_tpl_lst = [(622, 180, 660, 335), (227, 204, 349, 306)]

    # (xmin, ymin, xmax, ymax) = (622, 180, 660, 335)
    # print("ordinate::", xmin, ymin, xmax, ymax)

    chnl_obj = label_req_obj.channelobject.add()
    chnl_obj.channelName = 'LongImage'
    tmstamp_obj = chnl_obj.timestampobject.add()
    tmstamp_obj.timestamp = 54376457
    tmstamp_obj.NextImg.imageData = img_str
    for idx, evy_img_trkid in enumerate(img_trackid_lst):
        attrib_typ_obj = tmstamp_obj.CurrentAttr.add()
        attrib_typ_obj.trackID = evy_img_trkid
        attrib_typ_obj.trackername = "Re3"
        attrib_typ_obj.hasUserCorrected = 1
        # Loop in to send across the coordinates
        roi_min_obj = attrib_typ_obj.ROI.add()
        roi_min_obj.X = coordinate_tpl_lst[idx][0]
        roi_min_obj.Y = coordinate_tpl_lst[idx][1]
        roi_max_obj = attrib_typ_obj.ROI.add()
        roi_max_obj.X = coordinate_tpl_lst[idx][2]
        roi_max_obj.Y = coordinate_tpl_lst[idx][3]

    time.sleep(1)
    publisher_roi_obj.send(label_req_obj.SerializeToString())
示例#8
0
import ecal
import AlgoInterface_pb2
import imageservice_pb2
import sys

ecal.initialize(sys.argv, "HFL data requestor")
hfl_publ_obj = ecal.publisher("Request_Image")
import time
time.sleep(2)
hfl_req_proto_obj = imageservice_pb2.ImageRequest()

def request_hfl_data():

    # while ecal.ok():
    # hfl_req_proto_obj.required_timestamp = 1504816617728550
    hfl_req_proto_obj.image_index = 8   #1504816617788522
    # hfl_req_proto_obj.hfl_file_name = "D:\\Work\\2018\\code\\LT5G\\HDF5_reader\\2017.09.07_at_20.37.57_camera-mi_1449.h5"

    hfl_publ_obj.send(hfl_req_proto_obj.SerializeToString())

    ecal.finalize()


request_hfl_data()
示例#9
0
    def initialize_publsr_topics(self):

        # Initialize all the publisher topics
        self.h5_chnl_publr_obj = ecal.publisher(json_data['channel_response'])
        self.h5_img_publr_obj = ecal.publisher(json_data['hfl_response'])
示例#10
0
import cv2

if getattr(sys, 'frozen', False):
    os.chdir(sys._MEIPASS)

with open('topics.json') as data_file:
    json_data = json.load(data_file)
    # print(json_data)

request = str(json_data['request'])
response = str(json_data['response'])
h5_filename = str(json_data['h5_filename'])

ecal.initialize(sys.argv, "HFL data publisher")
hfl_subscr_obj = ecal.subscriber(request)
hfl_publs_obj = ecal.publisher(topic_name=response)

hfl_req_proto_obj = imageservice_pb2.ImageRequest()
hfl_resp_proto_obj = imageservice_pb2.HFLResponse()


class H5ReaderSequence(object):
    def __init__(self, fname):
        self.reset(fname)
        self.lastLoadFilename = ""

    def reset(self, fname):
        if not os.path.isfile(fname):
            print("Error - H5 file not available: %s!" % fname)
            sys.exit()
        # self.data = h5py.File(fname, "r")
import ecal
import imageservice_pb2
import sys
import time

ecal.initialize(sys.argv, "HFL data requestor")
# ecal.initialize(sys.argv, "H5 data publisher")
# hfl_publ_obj = ecal.publisher("Request_Device")
# hfl_publ_obj = ecal.publisher("Request_Channel")
hfl_publ_obj = ecal.publisher("Request_HFL")

time.sleep(2)
hfl_req_proto_obj = imageservice_pb2.ImageRequest()
# hfl_dvc_proto_obj = imageservice_pb2.deviceTypeRequest()
hfl_chnl_proto_obj = imageservice_pb2.devicesDataRequest()

# def request_device_typ():
#     hfl_dvc_proto_obj.device_type = "dfhxzfxgjhgcj"
#     # time.sleep(2)
#
#     hfl_publ_obj.send(hfl_dvc_proto_obj.SerializeToString())
#     print "hfl_req_proto_obj.SerializeToString() :: ", hfl_dvc_proto_obj.SerializeToString()
#
#     ecal.finalize()


def req_channel_type():
    hfl_chnl_proto_obj.required_devicesData = True
    payload = hfl_chnl_proto_obj.SerializeToString()
    # print "payload :: ", payload
    hfl_publ_obj.send(payload)
 def initialize_publsr_topics(self):
     # Initialize all the publisher topics
     # self.lt5_track_publr_obj = ecal.publisher(self.json_data['image_response'])
     self.lt5_track_publr_obj = ecal.publisher(self.tracker_response)
     self.lt5_algo_publr_obj = ecal.publisher(self.json_data['algo_begin_response'])
示例#13
0
import ecal
import imageservice_pb2
import AlgoInterface_pb2
import sys
import time

ecal.initialize(sys.argv, "HFL data requestor")
# ecal.initialize(sys.argv, "H5 data publisher")
# hfl_publ_obj = ecal.publisher("Request_Device")
# hfl_publ_obj = ecal.publisher("Request_Channel")
hfl_publ_obj = ecal.publisher("Finalize")

time.sleep(2)
hfl_req_proto_obj = imageservice_pb2.ImageRequest()
# hfl_dvc_proto_obj = imageservice_pb2.deviceTypeRequest()
hfl_chnl_proto_obj = AlgoInterface_pb2.AlgoState()

# def request_device_typ():
#     hfl_dvc_proto_obj.device_type = "dfhxzfxgjhgcj"
#     # time.sleep(2)
#
#     hfl_publ_obj.send(hfl_dvc_proto_obj.SerializeToString())
#     print "hfl_req_proto_obj.SerializeToString() :: ", hfl_dvc_proto_obj.SerializeToString()
#
#     ecal.finalize()


def req_channel_type():
    hfl_chnl_proto_obj.required_devicesData = True
    payload = hfl_chnl_proto_obj.SerializeToString()
    # print "payload :: ", payload
示例#14
0
import ecal
import common_pb2
import sys
import time

ecal.initialize(sys.argv, "Point Cloud data requestor")
tmstamp_publ_obj = ecal.publisher("PointCloud_Device_Request")
pcl_publ_obj = ecal.publisher("PointCloud_Data_Request")
pcl_finalize_obj = ecal.publisher("Finalize")

time.sleep(2)

def req_timestamp():
    dvc_data_proto_obj = common_pb2.DevicesDataRequest()
    dvc_data_proto_obj.requiredDevicesData = True
    payload = dvc_data_proto_obj.SerializeToString()
    # print "payload :: ", payload
    tmstamp_publ_obj.send(payload)

    ecal.finalize()

def req_pcl_points():
    pcl_data_proto_obj = common_pb2.DataRequest()
    pcl_data_proto_obj.requiredTimestamp = 1521225338975243 #1521225351544589
    pcl_data_proto_obj.requestDeviceName = "HFL"
    pcl_data_proto_obj.requestChannelName = "Valodyne"
    pcl_data_proto_obj.uniqueId = 1
    payload = pcl_data_proto_obj.SerializeToString()
    # print "payload :: ", payload
    pcl_publ_obj.send(payload)
示例#15
0
def publ_coord_single_obj():

    print("Publish tracking data......")

    ecal.initialize(sys.argv, "Tracker data")

    publisher_roi_obj = ecal.publisher(topic_name="SR_Request")
    label_req_obj = algointerface_pb2.LabelRequest()
    image_path = r'D:\Work\2018\code\LT5G\ticket_folders\Images\MFC4xxLongImageRight_7674957039.jpeg'
    # image_path = r'0001.jpeg'
    # read the image
    # img = cv2.imread(image_path, cv2.IMREAD_COLOR)
    img = cv2.imread(image_path, cv2.IMREAD_COLOR)
    img_encoded = cv2.imencode('.png', img)[1].tostring()
    # print("img_encoded ::", img)
    img_str = img_encoded
    # Read its respective coordinates
    # gt_boxes_path = r'D:\Work\2018\code\Tensorflow_code\Tracker\DLBasedSmartAnnotation\data\BlurCar2\groundtruth_rect.txt'
    image_nmber_idx = 1 - 1
    # with open(gt_boxes_path, 'r') as f:
    #     lines = f.readlines()
    # line = lines[image_nmber_idx]
    img_trackid_lst = [2]
    # x, y, w, h = [int(x) for x in line.split()]
    # 227	207	122	99
    # print("ordinate:", x, y, w, h)
    # (xmin, ymin, xmax, ymax) = (227, 207, 349, 306)
    # (xmin, ymin, xmax, ymax) = (227, 204, 349, 306)
    (xmin, ymin, xmax, ymax) = (622, 180, 660, 335)
    # xmin = 227
    # ymin = 207
    # xmax = 349
    # ymax = 306
    print("ordinate::", xmin, ymin, xmax, ymax)

    # label_req_obj.NextImg.imageData = img_str
    # for evy_img_trkid in img_trackid_lst:
    #     # Assign the trackid here
    #     attrib_typ_obj = label_req_obj.CurrentAttr.add()
    #     attrib_typ_obj.trackID = evy_img_trkid
    #     attrib_typ_obj.trackername = "ADNet"
    #     # Loop in to send across the coordinates
    #     roi_min_obj = attrib_typ_obj.ROI.add()
    #     roi_min_obj.X = xmin
    #     roi_min_obj.Y = ymin
    #     roi_max_obj = attrib_typ_obj.ROI.add()
    #     roi_max_obj.X = xmax
    #     roi_max_obj.Y = ymax

    chnl_obj = label_req_obj.channelobject.add()
    chnl_obj.channelName = 'LongImage'
    tmstamp_obj = chnl_obj.timestampobject.add()
    tmstamp_obj.timestamp = 54376457
    tmstamp_obj.NextImg.imageData = img_str
    for evy_img_trkid in img_trackid_lst:
        attrib_typ_obj = tmstamp_obj.CurrentAttr.add()
        attrib_typ_obj.trackID = evy_img_trkid
        attrib_typ_obj.trackername = "Re3"
        attrib_typ_obj.hasUserCorrected = 1
        # Loop in to send across the coordinates
        roi_min_obj = attrib_typ_obj.ROI.add()
        roi_min_obj.X = xmin
        roi_min_obj.Y = ymin
        roi_max_obj = attrib_typ_obj.ROI.add()
        roi_max_obj.X = xmax
        roi_max_obj.Y = ymax


    time.sleep(1)
    publisher_roi_obj.send(label_req_obj.SerializeToString())
with open(TOPICS_JSON) as data_file:
    json_data = json.load(data_file)
    # print(json_data)

request = str(json_data['image_request'])
response = str(json_data['image_response'])
vis_flag = True if str(json_data['visualization']) == "True" else False
full_eff_flag = True if str(json_data['full_efficiency']) == "True" else False

ecal.initialize(sys.argv, "Mask RCNN MS COCO detector")
ld_req_obj = imageservice_pb2.ImageResponse()
subscriber_obj = ecal.subscriber(topic_name=request)

lbl_response_obj = AlgoInterface_pb2.LabelResponse()
publisher_roi_obj = ecal.publisher(topic_name=response)


class InferenceConfig(coco.CocoConfig):
    # Set batch size to 1 since we'll be running inference on
    # one image at a time. Batch size = GPU_COUNT * IMAGES_PER_GPU
    GPU_COUNT = 1
    IMAGES_PER_GPU = 1
    if not full_eff_flag:
        IMAGE_MIN_DIM = 512
        IMAGE_MAX_DIM = 512


config = InferenceConfig()
# config.print()