問題背景:給任何有檢測框輸出的檢測演算法加上跟蹤,比如yolov3加上sort,然後遇到乙個細節沒注意,坑了自己一把,記錄一下
out_boxes, out_scores, out_classes = self.sess.run(
[self.boxes, self.scores, self.classes],
feed_dict=)
基於檢測的跟蹤演算法,肯定是應該先找到檢測演算法檢測框的輸出,這裡的out_boxes很顯然是檢測框的輸出。然後我就想當的認為裡面的每個box的座標形式是
xmin,ymin,xmax,ymax,然後接著去寫跟蹤部分,結果一直畫不出檢測框,然後除錯了一下,定位到如下圖:
可以看到它的操作,先取座標,後用pil的draw畫出矩形檢測框。
top, left, bottom, right = box
for i in range(thickness):
if predicted_class == 'person':
draw.rectangle(
[left + i, top + i, right - i, bottom - i],
outline=self.colors[c])
if predicted_class == 'person':
draw.rectangle(
[tuple(text_origin), tuple(text_origin + label_size)],
fill=self.colors[c])
draw.text(text_origin, label, fill=(0, 0, 0), font=font)
if predicted_class == 'person':
draw.rectangle(
[tuple(text_origin), tuple(text_origin + label_size)],
fill=self.colors[c])
draw.text(text_origin, label, fill=(0, 0, 0), font=font)
del draw
調整後檢測框個跟蹤框就可以都顯示出來了
調整部分**:
目標跟蹤檢測演算法(二) 檢測與跟蹤
在該階段,對已存的目標追蹤演算法出現了兩種比較公認的分類,一種是基於生成模型的方法,一種是基於判別模型的方法。在第一階段中的方法都屬於前一種,而基於判別的方法是指通過分類來做跟蹤,也叫檢測跟蹤 tracking by detection 通過機器學習方法,提取影象特徵,並訓練分類器進行分類,在下一幀...
VIBE檢測演算法
一 vibe 獲取目標 其他演算法處理 最終目標 優點 記憶體占用少,處理速度快,計算量小,檢測效果好 無引數法 可直接應用在產品中,軟硬體相容性好 效能優於混合高斯,引數化方法,sacon等 背景模型及時初始化 具有較好的抗噪能力。缺點 ghost區域 挑戰 必須適應環境的變化 比如光照的變化造成...
素數檢測演算法
因為1既不是素數也不是合數,所以下面的實現 中不考慮小於2的情況。本文以c語言進行講解,建議對著完整的原始碼看。最原始 最粗暴的方法就是從頭到尾逐個進行檢測,一旦遇到可被整除的數馬上返回false bool is prime 1 int n return true 該演算法時間複雜度為n2 n 2對...