當前位置: 首頁>>代碼示例>>Python>>正文


Python cv2.FONT_HERSHEY_COMPLEX_SMALL屬性代碼示例

本文整理匯總了Python中cv2.FONT_HERSHEY_COMPLEX_SMALL屬性的典型用法代碼示例。如果您正苦於以下問題:Python cv2.FONT_HERSHEY_COMPLEX_SMALL屬性的具體用法?Python cv2.FONT_HERSHEY_COMPLEX_SMALL怎麽用?Python cv2.FONT_HERSHEY_COMPLEX_SMALL使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在cv2的用法示例。


在下文中一共展示了cv2.FONT_HERSHEY_COMPLEX_SMALL屬性的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: draw_box

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def draw_box(self, roi, img, linewidth, color, name=None):
        """
            roi: rectangle or polygon
            img: numpy array img
            linewith: line width of the bbox
        """
        if len(roi) > 6 and len(roi) % 2 == 0:
            pts = np.array(roi, np.int32).reshape(-1, 1, 2)
            color = tuple(map(int, color))
            img = cv2.polylines(img, [pts], True, color, linewidth)
            pt = (pts[0, 0, 0], pts[0, 0, 1]-5)
            if name:
                img = cv2.putText(img, name, pt, cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, color, 1)
        elif len(roi) == 4:
            if not np.isnan(roi[0]):
                roi = list(map(int, roi))
                color = tuple(map(int, color))
                img = cv2.rectangle(img, (roi[0], roi[1]), (roi[0]+roi[2], roi[1]+roi[3]),
                         color, linewidth)
                if name:
                    img = cv2.putText(img, name, (roi[0], roi[1]-5), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, color, 1)
        return img 
開發者ID:STVIR,項目名稱:pysot,代碼行數:24,代碼來源:video.py

示例2: draw_outputs

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def draw_outputs(img, outputs, class_names=None):
    boxes, objectness, classes = outputs
    #boxes, objectness, classes = boxes[0], objectness[0], classes[0]
    wh = np.flip(img.shape[0:2])
    if img.ndim == 2 or img.shape[2] == 1:
        img = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)
    min_wh = np.amin(wh)
    if min_wh <= 100:
        font_size = 0.5
    else:
        font_size = 1
    for i in range(classes.shape[0]):
        x1y1 = tuple((np.array(boxes[i][0:2]) * wh).astype(np.int32))
        x2y2 = tuple((np.array(boxes[i][2:4]) * wh).astype(np.int32))
        img = cv2.rectangle(img, x1y1, x2y2, (255, 0, 0), 1)
        img = cv2.putText(img, '{}'.format(int(classes[i])), x1y1, cv2.FONT_HERSHEY_COMPLEX_SMALL, font_size,
                          (0, 0, 255), 1)
    return img 
開發者ID:akkaze,項目名稱:tf2-yolo3,代碼行數:20,代碼來源:utils.py

示例3: draw_labels

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def draw_labels(x, y, class_names=None):
    img = x.numpy()
    if img.ndim == 2 or img.shape[2] == 1:
        img = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)
    boxes, classes = tf.split(y, (4, 1), axis=-1)
    classes = classes[..., 0]
    wh = np.flip(img.shape[0:2])
    min_wh = np.amin(wh)
    if min_wh <= 100:
        font_size = 0.5
    else:
        font_size = 1
    for i in range(len(boxes)):
        x1y1 = tuple((np.array(boxes[i][0:2]) * wh).astype(np.int32))
        x2y2 = tuple((np.array(boxes[i][2:4]) * wh).astype(np.int32))
        img = cv2.rectangle(img, x1y1, x2y2, (255, 0, 0), 1)
        if class_names:
            img = cv2.putText(img, class_names[classes[i]], x1y1, cv2.FONT_HERSHEY_COMPLEX_SMALL, font_size,
                              (0, 0, 255), 1)
        else:
            img = cv2.putText(img, str(classes[i]), x1y1, cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)
    return img 
開發者ID:akkaze,項目名稱:tf2-yolo3,代碼行數:24,代碼來源:utils.py

示例4: show

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def show(img, label, target):
    img = np.transpose(img, (1, 2, 0))
    img *= 128.
    img += 127.5
    img = img.astype(np.uint8)

    lb = ""
    for i in label:
        lb += CHARS[i]
    tg = ""
    for j in target.tolist():
        tg += CHARS[int(j)]

    flag = "F"
    if lb == tg:
        flag = "T"
    # img = cv2.putText(img, lb, (0,16), cv2.FONT_HERSHEY_COMPLEX_SMALL, 0.6, (0, 0, 255), 1)
    img = cv2ImgAddText(img, lb, (0, 0))
    cv2.imshow("test", img)
    print("target: ", tg, " ### {} ### ".format(flag), "predict: ", lb)
    cv2.waitKey()
    cv2.destroyAllWindows() 
開發者ID:sirius-ai,項目名稱:LPRNet_Pytorch,代碼行數:24,代碼來源:test_LPRNet.py

示例5: draw_outputs

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def draw_outputs(img, outputs, class_names, class_colors=None):
    boxes, objectness, classes, nums = outputs
    boxes, objectness, classes, nums = boxes[0], objectness[0], classes[0], nums[0]
    wh = np.flip(img.shape[0:2])
    for i in range(nums):
        if class_colors:
            box_color = class_colors[int(classes[i]) % len(class_colors)]
        else:
            box_color = (255, 0, 0)
        label_color = (0, 0, 0)

        font_face = cv2.FONT_HERSHEY_COMPLEX_SMALL
        class_name = class_names[int(classes[i])]
        label_size = cv2.getTextSize(class_name, font_face, 1, 1)[0]
        
        top_left = tuple((np.array(boxes[i][0:2]) * wh).astype(np.int32))
        bottom_right = tuple((np.array(boxes[i][2:4]) * wh).astype(np.int32))
        label_bottom_right = tuple((np.array(top_left) + np.array(label_size)).astype(np.int32))
        label_origin = tuple((np.array(top_left) + np.array((0, label_size[1]))).astype(np.int32))

        img = cv2.rectangle(img, top_left, label_bottom_right, box_color, cv2.FILLED)
        img = cv2.rectangle(img, top_left, bottom_right, box_color, 2)
        img = cv2.putText(img, class_name, label_origin, font_face, 1, label_color, 2)
    return img 
開發者ID:microsoft,項目名稱:DirectML,代碼行數:26,代碼來源:utils.py

示例6: draw_detection

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def draw_detection(frame, det, class_names):
    (klass, score, x0, y0, x1, y1) = det
    klass_name = class_names[int(klass)]
    h = frame.shape[0]
    w = frame.shape[1]
    # denormalize detections from [0,1] to the frame size
    p0 = tuple(map(int, (x0*w,y0*h)))
    p1 = tuple(map(int, (x1*w,y1*h)))
    logging.info("detection: %s %s", klass_name, score)
    cv2.rectangle(frame, p0, p1, (0,0,255), 2)
    # Where to draw the text, a few pixels above the top y coordinate
    tp0 = (p0[0], p0[1]-5)
    draw_text = "{} {}".format(klass_name, score)
    cv2.putText(frame, draw_text, tp0, cv2.FONT_HERSHEY_COMPLEX_SMALL, 0.5, (0,0,255)) 
開發者ID:awslabs,項目名稱:dynamic-training-with-apache-mxnet-on-aws,代碼行數:16,代碼來源:demo.py

示例7: add_water_mask

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def add_water_mask(video_path, mask_word):
    """
    給視頻增加水印
    :param video_part3: 視頻源
    :param mask_word: 水印文字
    :return:
    """
    cap = cv2.VideoCapture(video_path)
    fps = cap.get(cv2.CAP_PROP_FPS)

    # 保證幀率不變
    fourcc = cv2.VideoWriter_fourcc('m', 'p', '4', 'v')
    video_temp_path = get_temp_path(video_path, 'temp')
    video_writer = cv2.VideoWriter(video_temp_path, fourcc, fps, img_size)

    ret, frame = cap.read()

    while ret:
        # 文字在圖中的坐標(注意:這裏的坐標原點是圖片左上角)
        x, y = img_size[0] - 200, img_size[1] - 50

        cv2.putText(img=frame, text=mask_word,
                    org=(x, y), fontFace=cv2.FONT_HERSHEY_COMPLEX_SMALL,
                    fontScale=1, color=(255, 255, 255))

        video_writer.write(frame)
        ret, frame = cap.read()

    # 刪除源文件,並重命名臨時文件
    os.remove(video_path)
    os.rename(video_temp_path, video_path)

    print('水印添加完成~')
    video_writer.release()
    cap.release() 
開發者ID:xingag,項目名稱:tools_python,代碼行數:37,代碼來源:video_cut_cv2.py

示例8: draw

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def draw(self, image, result):
        image_h, image_w, _ = image.shape
        colors = self.random_colors(len(result))
        for i in range(len(result)):
            xmin = max(int(result[i][1] - 0.5 * result[i][3]), 0)
            ymin = max(int(result[i][2] - 0.5 * result[i][4]), 0)
            xmax = min(int(result[i][1] + 0.5 * result[i][3]), image_w)
            ymax = min(int(result[i][2] + 0.5 * result[i][4]), image_h)
            color = tuple([rgb * 255 for rgb in colors[i]])
            cv2.rectangle(image, (xmin, ymin), (xmax, ymax), color, 1)
            cv2.putText(image, result[i][0] + ':%.2f' % result[i][5], (xmin + 1, ymin + 8), cv2.FONT_HERSHEY_COMPLEX_SMALL, 0.5, color, 1)
            print(result[i][0], ':%.2f%%' % (result[i][5] * 100 )) 
開發者ID:leeyoshinari,項目名稱:YOLO_v2,代碼行數:14,代碼來源:test_val.py

示例9: _annotate_frame

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def _annotate_frame(self,img, positions, tracking_units):
        if img is None:
            return
        for track_u in tracking_units:

            x,y = track_u.roi.offset
            y += track_u.roi.rectangle[3]/2

            cv2.putText(img, str(track_u.roi.idx), (int(x),int(y)), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (255,255,0))
            black_colour = (0, 0,0)
            roi_colour = (0, 255,0)
            cv2.drawContours(img,[track_u.roi.polygon],-1, black_colour, 3, LINE_AA)
            cv2.drawContours(img,[track_u.roi.polygon],-1, roi_colour, 1, LINE_AA)

            try:
                pos_list = positions[track_u.roi.idx]
            except KeyError:
                continue

            for pos in pos_list:
                colour = (0 ,0, 255)
                try:
                    if pos["has_interacted"]:
                        colour = (255, 0,0)
                except KeyError:
                    pass

                cv2.ellipse(img,((pos["x"],pos["y"]), (pos["w"],pos["h"]), pos["phi"]),black_colour,3, LINE_AA)
                cv2.ellipse(img,((pos["x"],pos["y"]), (pos["w"],pos["h"]), pos["phi"]),colour,1, LINE_AA) 
開發者ID:gilestrolab,項目名稱:ethoscope,代碼行數:31,代碼來源:drawers.py

示例10: draw_rois

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def draw_rois(im, all_rois):
    for roi in all_rois:
        x,y = roi.offset
        y += roi.rectangle[3]/2
        x += roi.rectangle[2]/2
        cv2.putText(im, str(roi.idx), (x,y), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (255,255,0))
        black_colour,roi_colour = (0, 0,0), (0, 255,0)
        cv2.drawContours(im,[roi.polygon],-1, black_colour, 3, cv2.CV_AA)
        cv2.drawContours(im,[roi.polygon],-1, roi_colour, 1, cv2.CV_AA) 
開發者ID:gilestrolab,項目名稱:ethoscope,代碼行數:11,代碼來源:target_detector.py

示例11: show

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def show(self, pred_trajs={}, linewidth=2, show_name=False):
        """
            pred_trajs: dict of pred_traj, {'tracker_name': list of traj}
                        pred_traj should contain polygon or rectangle(x, y, width, height)
            linewith: line width of the bbox
        """
        assert self.imgs is not None
        video = []
        cv2.namedWindow(self.name, cv2.WINDOW_NORMAL)
        colors = {}
        if len(pred_trajs) == 0 and len(self.pred_trajs) > 0:
            pred_trajs = self.pred_trajs
        for i, (roi, img) in enumerate(zip(self.gt_traj,
                self.imgs[self.start_frame:self.end_frame+1])):
            img = img.copy()
            if len(img.shape) == 2:
                img = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)
            else:
                img = cv2.cvtColor(img, cv2.COLOR_RGB2BGR)
            img = self.draw_box(roi, img, linewidth, (0, 255, 0),
                    'gt' if show_name else None)
            for name, trajs in pred_trajs.items():
                if name not in colors:
                    color = tuple(np.random.randint(0, 256, 3))
                    colors[name] = color
                else:
                    color = colors[name]
                img = self.draw_box(trajs[0][i], img, linewidth, color,
                        name if show_name else None)
            cv2.putText(img, str(i+self.start_frame), (5, 20),
                    cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (255, 255, 0), 2)
            cv2.imshow(self.name, img)
            cv2.waitKey(40)
            video.append(img.copy())
        return video 
開發者ID:STVIR,項目名稱:pysot,代碼行數:37,代碼來源:video.py

示例12: show

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def show(self, pred_trajs={}, linewidth=2, show_name=False):
        """
            pred_trajs: dict of pred_traj, {'tracker_name': list of traj}
                        pred_traj should contain polygon or rectangle(x, y, width, height)
            linewith: line width of the bbox
        """
        assert self.imgs is not None
        video = []
        cv2.namedWindow(self.name, cv2.WINDOW_NORMAL)
        colors = {}
        if len(pred_trajs) == 0 and len(self.pred_trajs) > 0:
            pred_trajs = self.pred_trajs
        for i, (roi, img) in enumerate(zip(self.gt_traj,
                self.imgs[self.start_frame:self.end_frame+1])):
            img = img.copy()
            if len(img.shape) == 2:
                img = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)
            else:
                img = cv2.cvtColor(img, cv2.COLOR_RGB2BGR)
            img = self.draw_box(roi, img, linewidth, (0, 255, 0),
                    'gt' if show_name else None)
            for name, trajs in pred_trajs.items():
                if name not in colors:
                    color = tuple(np.random.randint(0, 256, 3))
                    colors[name] = color
                else:
                    color = colors[name]
                img = self.draw_box(traj[0][i], img, linewidth, color,
                        name if show_name else None)
            cv2.putText(img, str(i+self.start_frame), (5, 20),
                    cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (255, 255, 0), 2)
            cv2.imshow(self.name, img)
            cv2.waitKey(40)
            video.append(img.copy())
        return video 
開發者ID:fengyang95,項目名稱:pyCFTrackers,代碼行數:37,代碼來源:video.py

示例13: save_final_state

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def save_final_state(self,save_path):
        #create color_dict
        colors_dict_final={}
        for pos,color in zip(self.p0,self.color):
            colors_dict_final[tuple(color)]=pos
        colors_dict_inital={}
        for pos,color in zip(*self.initial_state):
            colors_dict_inital[tuple(color)]=pos
        #import ipdb;ipdb.set_trace()
        
        last_frame=self.old_frame.copy()
        for k in colors_dict_inital:
            a,b=colors_dict_inital[k].ravel()
            if k in colors_dict_final:
                c,d=colors_dict_final[k].ravel()
                last_frame = cv2.line(last_frame,(a,b),(c,d),(255,0,0),2)
            else:
                last_frame = cv2.circle(last_frame,(a,b),2,(0,0,255),-1)
        font = cv2.FONT_HERSHEY_COMPLEX_SMALL
        text=' '.join(save_path.split('/')[-2:]).replace('_',' ')
        textsize=cv2.getTextSize(text,font,1,1)[0]
        cv2.putText(last_frame,text,(last_frame.shape[1]//2-textsize[0]//2,30), font,1, (0,0,255),1,cv2.LINE_AA)
        cv2.imwrite(save_path+'/tracks.png',last_frame)

        ret={}
        ret['init_ftr_cnt']=len(self.initial_state[0]) 
開發者ID:orig74,項目名稱:UE4PyServer,代碼行數:28,代碼來源:optical_flow.py

示例14: draw_labels

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def draw_labels(x, y, class_names):
    img = x.numpy()
    boxes, classes = tf.split(y, (4, 1), axis=-1)
    classes = classes[..., 0]
    wh = np.flip(img.shape[0:2])
    for i in range(len(boxes)):
        x1y1 = tuple((np.array(boxes[i][0:2]) * wh).astype(np.int32))
        x2y2 = tuple((np.array(boxes[i][2:4]) * wh).astype(np.int32))
        img = cv2.rectangle(img, x1y1, x2y2, (255, 0, 0), 2)
        img = cv2.putText(img, class_names[classes[i]],
                          x1y1, cv2.FONT_HERSHEY_COMPLEX_SMALL,
                          1, (0, 0, 255), 2)
    return img 
開發者ID:microsoft,項目名稱:DirectML,代碼行數:15,代碼來源:utils.py

示例15: main

# 需要導入模塊: import cv2 [as 別名]
# 或者: from cv2 import FONT_HERSHEY_COMPLEX_SMALL [as 別名]
def main(video_dir, gpu_id,  model_path):
    # load videos
    filenames = sorted(glob.glob(os.path.join(video_dir, "img/*.jpg")),
           key=lambda x: int(os.path.basename(x).split('.')[0]))
    frames = [cv2.cvtColor(cv2.imread(filename), cv2.COLOR_BGR2RGB) for filename in filenames]
    gt_bboxes = pd.read_csv(os.path.join(video_dir, "groundtruth_rect.txt"), sep='\t|,| ',
            header=None, names=['xmin', 'ymin', 'width', 'height'],
            engine='python')

    title = video_dir.split('/')[-1]
    # starting tracking
    tracker = SiamFCTracker(model_path, gpu_id)
    for idx, frame in enumerate(frames):
        if idx == 0:
            bbox = gt_bboxes.iloc[0].values
            tracker.init(frame, bbox)
            bbox = (bbox[0]-1, bbox[1]-1,
                    bbox[0]+bbox[2]-1, bbox[1]+bbox[3]-1)
        else: 
            bbox = tracker.update(frame)
        # bbox xmin ymin xmax ymax
        frame = cv2.rectangle(frame,
                              (int(bbox[0]), int(bbox[1])),
                              (int(bbox[2]), int(bbox[3])),
                              (0, 255, 0),
                              2)
        gt_bbox = gt_bboxes.iloc[idx].values
        gt_bbox = (gt_bbox[0], gt_bbox[1],
                   gt_bbox[0]+gt_bbox[2], gt_bbox[1]+gt_bbox[3])
        frame = cv2.rectangle(frame,
                              (int(gt_bbox[0]-1), int(gt_bbox[1]-1)), # 0-index
                              (int(gt_bbox[2]-1), int(gt_bbox[3]-1)),
                              (255, 0, 0),
                              1)
        if len(frame.shape) == 3:
            frame = cv2.cvtColor(frame, cv2.COLOR_RGB2BGR)
        frame = cv2.putText(frame, str(idx), (5, 20), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 255, 0), 1)
        cv2.imshow(title, frame)
        cv2.waitKey(30) 
開發者ID:StrangerZhang,項目名稱:SiamFC-PyTorch,代碼行數:41,代碼來源:demo_siamfc.py


注:本文中的cv2.FONT_HERSHEY_COMPLEX_SMALL屬性示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。