平安校園視頻監(jiān)控方案部署一臺(tái)SuiJi-AI100視頻分析服務(wù)器,平安校園視頻監(jiān)控方案使用校園視頻監(jiān)控智方案能分析儀進(jìn)行視頻取流和視頻告警事件的處理,生成告警事件和記錄,并進(jìn)行系統(tǒng)的數(shù)據(jù)展示和應(yīng)用,并可聯(lián)動(dòng)IP音箱進(jìn)行告警事件語(yǔ)音廣播和實(shí)時(shí)廣播喊話。
YOLOv5算法具有4個(gè)版本,具體包括:YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x四種,本文重點(diǎn)講解YOLOv5s,其它的版本都在該版本的基礎(chǔ)上對(duì)網(wǎng)絡(luò)進(jìn)行加深與加寬。輸入端-輸入端表示輸入的圖片。該網(wǎng)絡(luò)的輸入圖像大小為608*608,該階段通常包含一個(gè)圖像預(yù)處理階段,即將輸入圖像縮放到網(wǎng)絡(luò)的輸入大小,并進(jìn)行歸一化等操作。在網(wǎng)絡(luò)訓(xùn)練階段,YOLOv5使用Mosaic數(shù)據(jù)增強(qiáng)操作提升模型的訓(xùn)練速度和網(wǎng)絡(luò)的精度;并提出了一種自適應(yīng)錨框計(jì)算與自適應(yīng)圖片縮放方法。基準(zhǔn)網(wǎng)絡(luò)-基準(zhǔn)網(wǎng)絡(luò)通常是一些性能優(yōu)異的分類器種的網(wǎng)絡(luò),該模塊用來(lái)提取一些通用的特征表示。YOLOv5中不僅使用了CSPDarknet53結(jié)構(gòu),而且使用了Focus結(jié)構(gòu)作為基準(zhǔn)網(wǎng)絡(luò)。
Neck網(wǎng)絡(luò)-Neck網(wǎng)絡(luò)通常位于基準(zhǔn)網(wǎng)絡(luò)和頭網(wǎng)絡(luò)的中間位置,利用它可以進(jìn)一步提升特征的多樣性及魯棒性。雖然YOLOv5同樣用到了SPP模塊、FPN+PAN模塊,但是實(shí)現(xiàn)的細(xì)節(jié)有些不同。
Head輸出端-Head用來(lái)完成目標(biāo)檢測(cè)結(jié)果的輸出。針對(duì)不同的檢測(cè)算法,輸出端的分支個(gè)數(shù)不盡相同,通常包含一個(gè)分類分支和一個(gè)回歸分支。YOLOv4利用GIOU_Loss來(lái)代替Smooth L1 Loss函數(shù),從而進(jìn)一步提升算法的檢測(cè)精度。
平安校園視頻監(jiān)控方案可以做到監(jiān)測(cè)到有人員在異常時(shí)間進(jìn)入校園或出學(xué)校時(shí),系統(tǒng)主動(dòng)觸發(fā)告警。當(dāng)視頻監(jiān)控智能分析系統(tǒng)檢測(cè)監(jiān)控區(qū)域是否有劇烈活動(dòng)事件。如有該類事件主動(dòng)觸發(fā)告警。系統(tǒng)還可以對(duì)學(xué)校重點(diǎn)區(qū)域進(jìn)行煙霧監(jiān)測(cè),當(dāng)發(fā)現(xiàn)現(xiàn)場(chǎng)有煙霧、濃煙時(shí)高清攝像頭自動(dòng)監(jiān)測(cè),出現(xiàn)異常自動(dòng)鎖定,主動(dòng)觸發(fā)告警,及時(shí)通知管理人員及時(shí)處理應(yīng)對(duì)。
# 解析模型 def parse_model(d, ch): # model_dict, input_channels(3) logger.info('\n%3s%18s%3s%10s %-40s%-30s' % ('', 'from', 'n', 'params', 'module', 'arguments')) anchors, nc, gd, gw = d['anchors'], d['nc'], d['depth_multiple'], d['width_multiple'] na = (len(anchors[0]) // 2) if isinstance(anchors, list) else anchors # number of anchors no = na * (nc + 5) # number of outputs = anchors * (classes + 5) layers, save, c2 = [], [], ch[-1] # layers, savelist, ch out for i, (f, n, m, args) in enumerate(d['backbone'] + d['head']): # from, number, module, args m = eval(m) if isinstance(m, str) else m # eval strings for j, a in enumerate(args): try: args[j] = eval(a) if isinstance(a, str) else a # eval strings except: pass n = max(round(n * gd), 1) if n > 1 else n # depth gain if m in [Conv, GhostConv, Bottleneck, GhostBottleneck, SPP, DWConv, MixConv2d, Focus, CrossConv, BottleneckCSP, C3]: c1, c2 = ch[f], args[0] # Normal # if i > 0 and args[0] != no: # channel expansion factor # ex = 1.75 # exponential (default 2.0) # e = math.log(c2 / ch[1]) / math.log(2) # c2 = int(ch[1] * ex ** e) # if m != Focus: c2 = make_divisible(c2 * gw, 8) if c2 != no else c2 # Experimental # if i > 0 and args[0] != no: # channel expansion factor # ex = 1 + gw # exponential (default 2.0) # ch1 = 32 # ch[1] # e = math.log(c2 / ch1) / math.log(2) # level 1-n # c2 = int(ch1 * ex ** e) # if m != Focus: # c2 = make_divisible(c2, 8) if c2 != no else c2 args = [c1, c2, *args[1:]] if m in [BottleneckCSP, C3]: args.insert(2, n) n = 1 elif m is nn.BatchNorm2d: args = [ch[f]] elif m is Concat: c2 = sum([ch[x if x < 0 else x + 1] for x in f]) elif m is Detect: args.append([ch[x + 1] for x in f]) if isinstance(args[1], int): # number of anchors args[1] = [list(range(args[1] * 2))] * len(f) elif m is Contract: c2 = ch[f if f < 0 else f + 1] * args[0] ** 2 elif m is Expand: c2 = ch[f if f < 0 else f + 1] // args[0] ** 2 else: c2 = ch[f if f < 0 else f + 1] m_ = nn.Sequential(*[m(*args) for _ in range(n)]) if n > 1 else m(*args) # module t = str(m)[8:-2].replace('__main__.', '') # module type np = sum([x.numel() for x in m_.parameters()]) # number params m_.i, m_.f, m_.type, m_.np = i, f, t, np # attach index, 'from' index, type, number params logger.info('%3s%18s%3s%10.0f %-40s%-30s' % (i, f, n, np, t, args)) # print save.extend(x % i for x in ([f] if isinstance(f, int) else f) if x != -1) # append to savelist layers.append(m_) ch.append(c2) return nn.Sequential(*layers), sorted(save)
-
行為分析
+關(guān)注
關(guān)注
0文章
34瀏覽量
1516 -
人工智能算法
+關(guān)注
關(guān)注
0文章
61瀏覽量
5236 -
視頻圖像識(shí)別
+關(guān)注
關(guān)注
0文章
8瀏覽量
1982
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論