婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Python使用OPENCV的目標跟蹤算法實現自動視頻標注效果

Python使用OPENCV的目標跟蹤算法實現自動視頻標注效果

熱門標簽:哈爾濱外呼系統代理商 湛江電銷防封卡 電話機器人適用業務 鄭州智能外呼系統運營商 不錯的400電話辦理 獲客智能電銷機器人 南昌辦理400電話怎么安裝 徐州天音防封電銷卡 佛山防封外呼系統收費

先上效果

 1.首先,要使用opencv的目標跟蹤算法,必須要有opencv環境

 使用:opencv==4.4.0 和 opencv-contrib-python==4.4.0.46,lxml   這三個環境包。

也可以使用以下方法進行下載 : 

pip install opencv-python==4.4.0
pip install opencv-contrib-python==4.4.0.4

pip install lxml

2.使用方法:

        (1):英文狀態下的 “s” 是進行標注

        (2):使用小鍵盤 1-9 按下對應的標簽序號,標簽序號和標簽可自定義(需要提前定義)

       (3):對目標進行繪制

       (4):按空格鍵繼續

        重復進行 (1)(2)(3)(4)步驟,可實現多個目標的跟蹤繪制

        英文狀態下的 “r” 是所有清除繪制

         英文狀態下的 “q” 是退出

          當被跟蹤目標丟失時,自動清除所有繪制

import cv2
import os
import time
from lxml import etree
 
#視頻路徑
Vs = cv2.VideoCapture('peaple.avi')
#自定義標簽
Label = {1:"people",2:"car",3:"Camera"}
#圖片保存路徑 ,一定使用要用絕對路徑!!
imgpath = r"C:\Users\BGT\Desktop\opencv\img"
#xml保存路徑 ,一定使用要用絕對路徑!!
xmlpath = r"C:\Users\BGT\Desktop\opencv\xml"
#設置視頻縮放
cv2.namedWindow("frame", 0)
#設置視頻寬高
cv2.resizeWindow("frame", 618, 416)
 
#定義生成xml類
class Gen_Annotations:
    def __init__(self, json_info):
        self.root = etree.Element("annotation")
 
        child1 = etree.SubElement(self.root, "folder")
        child1.text = str(json_info["pic_dirname"])
 
        child2 = etree.SubElement(self.root, "filename")
        child2.text = str(json_info["filename"])
 
        child3 = etree.SubElement(self.root, "path")
        child3.text = str(json_info["pic_path"])
 
        child4 = etree.SubElement(self.root, "source")
 
        child5 = etree.SubElement(child4, "database")
        child5.text = "My name is BGT"
 
    def set_size(self, witdh, height, channel):
        size = etree.SubElement(self.root, "size")
        widthn = etree.SubElement(size, "width")
        widthn.text = str(witdh)
        heightn = etree.SubElement(size, "height")
        heightn.text = str(height)
        channeln = etree.SubElement(size, "depth")
        channeln.text = str(channel)
        segmented = etree.SubElement(self.root, "segmented")
        segmented.text = "0"
 
    def savefile(self, filename):
        tree = etree.ElementTree(self.root)
        tree.write(filename, pretty_print=True, xml_declaration=False, encoding='utf-8')
 
    def add_pic_attr(self, label, x0, y0, x1, y1):
        object = etree.SubElement(self.root, "object")
        namen = etree.SubElement(object, "name")
        namen.text = label
        pose = etree.SubElement(object, "pose")
        pose.text = "Unspecified"
        truncated = etree.SubElement(object, "truncated")
        truncated.text = "0"
        difficult = etree.SubElement(object, "difficult")
        difficult.text = "0"
        bndbox = etree.SubElement(object, "bndbox")
        xminn = etree.SubElement(bndbox, "xmin")
        xminn.text = str(x0)
        yminn = etree.SubElement(bndbox, "ymin")
        yminn.text = str(y0)
        xmaxn = etree.SubElement(bndbox, "xmax")
        xmaxn.text = str(x1)
        ymaxn = etree.SubElement(bndbox, "ymax")
        ymaxn.text = str(y1)
 
 #定義生成xml的方法
def voc_opencv_xml(a,b,c,d,e,f,boxes,Label,Label_a,save="1.xml"):
    json_info = {}
    json_info["pic_dirname"] = a
    json_info["pic_path"] = b
    json_info["filename"] = c
    anno = Gen_Annotations(json_info)
 
    anno.set_size(d, e, f)
 
    for box in range(len(boxes)):
        x,y,w,h = [int(v) for v in boxes[box]]
        anno.add_pic_attr(Label[Label_a[box]],x,y,x+w,y+h)
    anno.savefile(save)
  
if __name__ == '__main__':
    Label_a = []
    contents = os.path.split(imgpath)[1]
    trackers = cv2.MultiTracker_create()
    while True:
        Filename_jpg = str(time.time()).split(".")[0] + "_" + str(time.time()).split(".")[1] + ".jpg"
        Filename_xml = str(time.time()).split(".")[0] + "_" + str(time.time()).split(".")[1] + ".xml"
 
        path_Filename_jpg = os.path.join(imgpath,Filename_jpg)
        path_Filename_xml = os.path.join(xmlpath,Filename_xml)
 
        ret,frame = Vs.read()
        if not ret:
            break
 
        success,boxes = trackers.update(frame)
        if len(boxes)>0:
            cv2.imwrite(path_Filename_jpg, frame)
            judge = True
        else:
            judge = False
 
         if success==False:
            print("目標丟失")
            trackers = cv2.MultiTracker_create()
            Label_a = []
            judge = False
        if judge:
            voc_opencv_xml(contents,Filename_jpg,path_Filename_jpg,frame.shape[1],frame.shape[0],frame.shape[2],boxes,Label,Label_a,path_Filename_xml)
        if judge:
            for box in range(len(boxes)):
                x,y,w,h = [int(v) for v in boxes[box]]
                cv2.putText(frame, Label[Label_a[box]], (x, y), cv2.FONT_HERSHEY_COMPLEX, 1, (255, 255, 255), 1)
                cv2.rectangle(frame,(x,y),(x+w,y+h),(255,0,0),2)
  
        cv2.imshow('frame',frame)
 
        var = cv2.waitKey(30)
 
        if var == ord('s'):
            imgzi = cv2.putText(frame, str(Label), (50, 50), cv2.FONT_HERSHEY_TRIPLEX, 1, (0, 255, 0), 2)
            cv2.imshow('frame', frame)
            var = cv2.waitKey(0)
            if var-48len(Label) or var-48=len(Label):
                Label_a.append(int(var-48))
            box = cv2.selectROI("frame", frame, fromCenter=False,showCrosshair=True)
            tracker = cv2.TrackerCSRT_create()
            trackers.add(tracker,frame,box)
        elif var == ord("r"):
            trackers = cv2.MultiTracker_create()
            Label_a = []
        elif var == ord('q'): #退出
            break
 
    Vs.release()
    cv2.destroyAllWindows()
 

3.得到xml和img數據是VOC格式,img和xml文件以時間戳進行命名。防止同名覆蓋。

4.最后使用 labelImg軟件  對獲取到的img和xml進行最后的檢查和微調

到此這篇關于Python使用OPENCV的目標跟蹤算法進自動視頻標注效果的文章就介紹到這了,更多相關OPENCV目標跟蹤自動視頻標注內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • opencv3/C++基于顏色的目標跟蹤方式
  • Python+OpenCV目標跟蹤實現基本的運動檢測
  • Opencv基于CamShift算法實現目標跟蹤

標簽:蘭州 安康 懷化 吉安 呂梁 蕪湖 廣西 紹興

巨人網絡通訊聲明:本文標題《Python使用OPENCV的目標跟蹤算法實現自動視頻標注效果》,本文關鍵詞  Python,使用,OPENCV,的,目標,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python使用OPENCV的目標跟蹤算法實現自動視頻標注效果》相關的同類信息!
  • 本頁收集關于Python使用OPENCV的目標跟蹤算法實現自動視頻標注效果的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    色婷婷国产精品| 韩国成人在线视频| 国产精品免费久久久久| 日韩三级视频中文字幕| 3d成人h动漫网站入口| 91精品国产日韩91久久久久久| 欧美日高清视频| 欧美一级专区免费大片| 欧美xxxx老人做受| 国产午夜亚洲精品午夜鲁丝片 | 成人动漫av在线| 不卡欧美aaaaa| 色综合天天性综合| 欧美日本一区二区在线观看| 91精品国产综合久久精品图片| 欧美成人a∨高清免费观看| 久久综合久久综合亚洲| 国产精品每日更新在线播放网址| 亚洲三级视频在线观看| 日韩国产精品久久久| 国产一区二区三区在线观看免费 | 欧美日韩精品久久久| 欧美一级片在线| 国产视频一区二区在线观看| 亚洲色图欧美激情| 日韩精品一级中文字幕精品视频免费观看 | 一本大道久久a久久综合| 欧美综合天天夜夜久久| 91精选在线观看| 国产精品久久久久婷婷| 五月天一区二区三区| 国产精品资源在线| 欧美特级限制片免费在线观看| 精品国产亚洲在线| 亚洲狠狠爱一区二区三区| 国产在线精品视频| 欧美精品1区2区| 国产精品久久久久aaaa| 日韩1区2区日韩1区2区| 91日韩精品一区| 国产亚洲一区二区三区四区| 日韩国产欧美在线观看| 99riav久久精品riav| 久久色在线观看| 日本免费新一区视频| 色婷婷精品久久二区二区蜜臂av | 精品嫩草影院久久| 亚洲人成小说网站色在线| 久久激情五月婷婷| 欧美视频自拍偷拍| 亚洲欧美日韩久久精品| 国产成人自拍网| 精品成人免费观看| 日韩高清不卡在线| 在线看国产日韩| 亚洲欧洲精品成人久久奇米网| 精品系列免费在线观看| 欧美一区二区三区四区五区| 亚洲人成影院在线观看| 北岛玲一区二区三区四区| 国产丝袜欧美中文另类| 国产传媒日韩欧美成人| 久久综合久久鬼色中文字| 麻豆精品国产91久久久久久| 91精品国产91久久久久久最新毛片| 亚洲国产婷婷综合在线精品| 欧美在线观看禁18| 亚洲国产日韩在线一区模特| 欧美日韩一区视频| 亚洲高清久久久| 欧美夫妻性生活| 蜜臀av亚洲一区中文字幕| 69堂成人精品免费视频| 蜜臀av性久久久久蜜臀aⅴ四虎| 7777精品伊人久久久大香线蕉完整版| 亚洲h精品动漫在线观看| 欧美日韩国产a| 久久99久久久久久久久久久| 欧美一级黄色片| 精品写真视频在线观看| 中文字幕的久久| 色域天天综合网| 天涯成人国产亚洲精品一区av| 欧美日韩高清一区二区不卡| 美女在线一区二区| 久久久久97国产精华液好用吗| 欧美影片第一页| 亚洲综合久久av| 日韩久久精品一区| 成人黄色网址在线观看| 一区二区三国产精华液| 91精品国产日韩91久久久久久| 极品瑜伽女神91| 亚洲色图制服诱惑| 欧美精品久久久久久久久老牛影院| 久久精品国产亚洲一区二区三区| 国产精品欧美极品| 欧美日韩一区二区在线观看| 国产精品538一区二区在线| 亚洲视频一区二区免费在线观看| 欧美日韩国产区一| 国产99精品视频| 婷婷一区二区三区| 国产精品色婷婷久久58| 欧美高清视频一二三区 | 欧美肥大bbwbbw高潮| 久久99精品久久只有精品| 国产精品传媒入口麻豆| 日韩一区二区在线观看视频| 99视频超级精品| 国内外成人在线| 亚洲一区二区三区在线| 久久精品欧美一区二区三区不卡| 欧美日韩久久一区二区| 风间由美一区二区三区在线观看| 亚洲第一二三四区| 国产精品久久久久一区| 精品欧美黑人一区二区三区| 欧美日韩一区二区三区四区| 成人国产一区二区三区精品| 久久国产精品无码网站| 天天色天天爱天天射综合| 1区2区3区国产精品| 久久久99久久| 精品久久久久久久人人人人传媒| 欧美午夜精品久久久久久孕妇| jizz一区二区| 成人毛片视频在线观看| 黑人巨大精品欧美黑白配亚洲| 日本成人超碰在线观看| 亚洲综合色噜噜狠狠| 亚洲精品一二三| 亚洲同性gay激情无套| 亚洲国产高清aⅴ视频| 久久九九影视网| 久久精品人人做| 久久九九久久九九| 精品国产91九色蝌蚪| 欧美成人免费网站| 日韩欧美视频一区| 日韩一区二区电影在线| 欧美精品日韩一本| 欧美高清一级片在线| 欧美日韩一二三区| 欧美精品一卡两卡| 91精品久久久久久久99蜜桃| 日韩三级伦理片妻子的秘密按摩| 国产精品家庭影院| 欧美国产欧美综合| 国产精品久久毛片av大全日韩| 综合激情成人伊人| 一区二区三区免费在线观看| 亚洲已满18点击进入久久| 亚洲一区在线视频| 日韩在线一二三区| 免费看日韩a级影片| 精品在线观看免费| 丁香桃色午夜亚洲一区二区三区| av福利精品导航| 欧美日韩精品三区| 欧美一区二区三区喷汁尤物| 欧美精品一区二区三区一线天视频| 久久久国产精品麻豆| 亚洲日本在线视频观看| 亚洲gay无套男同| 国产精品一区一区三区| 97精品超碰一区二区三区| 在线免费观看不卡av| 日韩一级在线观看| 国产精品无遮挡| 午夜精品123| 国产河南妇女毛片精品久久久| 99久久免费精品高清特色大片| 欧美又粗又大又爽| 久久亚洲影视婷婷| 亚洲欧美精品午睡沙发| 日韩国产在线一| 99久久精品国产网站| 欧美一区在线视频| 亚洲欧洲性图库| 国模冰冰炮一区二区| 91成人网在线| 国产午夜精品一区二区三区嫩草| 亚洲综合免费观看高清完整版| 极品尤物av久久免费看| 91精品福利在线| 国产精品乱码久久久久久| 日韩在线观看一区二区| 91一区在线观看| 国产日韩影视精品| 奇米色一区二区三区四区| 97久久精品人人做人人爽| 欧美精品一区二区久久婷婷| 亚洲午夜国产一区99re久久| 成人性生交大片免费看中文网站| 欧美二区在线观看| 国产999精品久久久久久绿帽| 69堂国产成人免费视频| 一区二区三区自拍| 成人激情校园春色|