Change B-Box colour at run time in deepstream test app-2

Hello,
I am using DS test app 2 (python), I want to change the colour of b-box on the basis of classifier id which I will get like if get person_with_mask then b-box should be green else red. what should i add in the code base. please find code below.

def osd_sink_pad_buffer_probe(pad,info,u_data):
frame_number=0
#Intiallizing object counter with 0.
obj_counter = {
    PGIE_CLASS_ID_VEHICLE:0,
    PGIE_CLASS_ID_PERSON:0,
    PGIE_CLASS_ID_BICYCLE:0,
    PGIE_CLASS_ID_ROADSIGN:0
}
num_rects=0
gst_buffer = info.get_buffer()
if not gst_buffer:
    print("Unable to get GstBuffer ")
    return

# Retrieve batch metadata from the gst_buffer
# Note that pyds.gst_buffer_get_nvds_batch_meta() expects the
# C address of gst_buffer as input, which is obtained with hash(gst_buffer)
batch_meta = pyds.gst_buffer_get_nvds_batch_meta(hash(gst_buffer))
l_frame = batch_meta.frame_meta_list
while l_frame is not None:
    try:
        # Note that l_frame.data needs a cast to pyds.NvDsFrameMeta
        # The casting is done by pyds.glist_get_nvds_frame_meta()
        # The casting also keeps ownership of the underlying memory
        # in the C code, so the Python garbage collector will leave
        # it alone.
        frame_meta = pyds.glist_get_nvds_frame_meta(l_frame.data)
    except StopIteration:
        break

    frame_number=frame_meta.frame_num
    num_rects = frame_meta.num_obj_meta
    l_obj=frame_meta.obj_meta_list

    CURRENT_FRAME_TRACKER = {}
    CURRENT_FRAME_TRACKER_LIST = {}
    global IN_COUNT
    global OUT_COUNT
    
    while l_obj is not None:
        try:
            # Casting l_obj.data to pyds.NvDsObjectMeta
            obj_meta=pyds.glist_get_nvds_object_meta(l_obj.data)
            classifier_meta = pyds.glist_get_nvds_classifier_meta(l_obj.data)
            x1 = obj_meta.rect_params.left
            y1 = obj_meta.rect_params.top
            x2 = x1 + obj_meta.rect_params.width
            y2 = y1 + obj_meta.rect_params.height
            Tracker_id = obj_meta.object_id
            class_id = obj_meta.class_id

            l_classifier= obj_meta.classifier_meta_list
            # if class_id==XXX and l_classifier is not None:
            if l_classifier is not None:
                classifier_meta=pyds.glist_get_nvds_classifier_meta(l_classifier.data)
                l_label=classifier_meta.label_info_list
                label_info=pyds.glist_get_nvds_label_info(l_label.data)
                classifier_class = label_info.result_class_id
                num_classes = label_info.num_classes
                label_id = label_info.label_id
                result_prob = label_info.result_prob
                print("======================================")
                print("Num classes : ",num_classes)
                print("classifier_class id : ",classifier_class)
                print("label_id is : ",label_id)
                print("result_prob : ",result_prob)
                print("======================================")

please help me what should I after this for change the b-box colour
Thanks.

Hi @Pritam ,
Could you check python sample - deepstream-test4 meet your requirement?

It defines differnet obj color in generate_event_msg_meta() for PGIE_CLASS_ID_VEHICLE and PGIE_CLASS_ID_PERSON.

Thanks!