如何使用Python和OpenCV實(shí)現(xiàn)對(duì)象檢測(cè)任務(wù)的數(shù)據(jù)擴(kuò)充過(guò)程?
# Modify annotation
new_boxes=[]
for box in gt_boxes:
obj_name = box[0]
x1 = int(box[1])
y1 = int(box[2])
x2 = int(box[3])
y2 = int(box[4])
x1, x2 = x1-x, x2-x
y1, y2 = y1-y, y2-y
x1, y1, x2, y2 = x1/scale, y1/scale, x2/scale, y2/scale
if (x1<img.shape[1] and y1<img.shape[0]) and (x2>0 and y2>0):
if x1<0: x1=0
if y1<0: y1=0
if x2>img.shape[1]: x2=img.shape[1]
if y2>img.shape[0]: y2=img.shape[0]
new_boxes.a(chǎn)ppend([obj_name, x1, y1, x2, y2])
return resized, new_boxes
CutoutCutout是2017年由Terrance DeVries和Graham W. Taylor在他們的論文中介紹的,是一種簡(jiǎn)單的正則化技術(shù),在訓(xùn)練過(guò)程中隨機(jī)掩蓋輸入的正方形區(qū)域,可以用來(lái)提高卷積神經(jīng)網(wǎng)絡(luò)的魯棒性和整體性能。這種方法不僅非常容易實(shí)現(xiàn),而且表明它可以與現(xiàn)有形式的數(shù)據(jù)擴(kuò)充和其他正則化器一起使用,進(jìn)一步提高模型的性能。論文地址:https://arxiv.org/abs/1708.04552與本文一樣,我們使用了cutout來(lái)提高圖像識(shí)別(分類(lèi))的精度,因此,如果我們將相同的方案部署到目標(biāo)檢測(cè)數(shù)據(jù)集中,可能會(huì)導(dǎo)致丟失目標(biāo)(特別是小目標(biāo))的問(wèn)題。在下圖中,刪除了剪切區(qū)域(黑色區(qū)域)內(nèi)的大量小對(duì)象,這不符合數(shù)據(jù)增強(qiáng)的精神。

為了使這種方式適合對(duì)象檢測(cè),我們可以做一個(gè)簡(jiǎn)單的修改,而不是僅使用一個(gè)遮罩并將其放置在圖像中的隨機(jī)位置,而是隨機(jī)選擇一半的對(duì)象,并將裁剪應(yīng)用于每個(gè)目標(biāo)區(qū)域,效果更佳。增強(qiáng)后的圖像如下圖所示。

Cutout的輸出是一個(gè)新生成的圖像,我們不刪除對(duì)象或改變圖像大小,那么生成的圖像的注釋就是原始注釋。def cutout(img, gt_boxes, amount=0.5):
'''
### Cutout ###
img: image
gt_boxes: format [[obj x1 y1 x2 y2],...]
amount: num of masks / num of objects
'''
out = img.copy()
ran_select = random.sample(gt_boxes, round(amount*len(gt_boxes)))
for box in ran_select:
x1 = int(box[1])
y1 = int(box[2])
x2 = int(box[3])
y2 = int(box[4])
mask_w = int((x2 - x1)*0.5)
mask_h(yuǎn) = int((y2 - y1)*0.5)
mask_x1 = random.randint(x1, x2 - mask_w)
mask_y1 = random.randint(y1, y2 - mask_h(yuǎn))
mask_x2 = mask_x1 + mask_w
mask_y2 = mask_y1 + mask_h(yuǎn)
cv2.rectangle(out, (mask_x1, mask_y1), (mask_x2, mask_y2), (0, 0, 0), thickness=-1)
return out
ColorJitterColorJitter是另一種簡(jiǎn)單的圖像數(shù)據(jù)擴(kuò)充類(lèi)型,我們隨機(jī)改變圖像的亮度、對(duì)比度和飽和度。我相信這個(gè)“家伙”很容易被大多數(shù)讀者理解。

發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)
驗(yàn)證碼: 刷新
圖片新聞
-

落地?zé)o錫!京東首個(gè)物流機(jī)器人超級(jí)工廠來(lái)了
-

OpenAI發(fā)布的AI瀏覽器,市場(chǎng)為何反應(yīng)強(qiáng)烈?
-

馬云重返一線督戰(zhàn),阿里重啟創(chuàng)始人模式
-

機(jī)器人奧運(yùn)會(huì)戰(zhàn)報(bào):宇樹(shù)機(jī)器人摘下首金,天工Ultra搶走首位“百米飛人”
-

存儲(chǔ)圈掐架!江波龍起訴佰維,索賠121萬(wàn)
-

長(zhǎng)安汽車(chē)母公司突然更名:從“中國(guó)長(zhǎng)安”到“辰致科技”
-

豆包前負(fù)責(zé)人喬木出軌BP后續(xù):均被辭退
-

字節(jié)AI Lab負(fù)責(zé)人李航卸任后返聘,Seed進(jìn)入調(diào)整期
最新活動(dòng)更多
-
6月30日立即申請(qǐng)?jiān)囉?> 【免費(fèi)試用】旭之源工業(yè)電源一一機(jī)器人的穩(wěn)定“心臟“
-
精彩回顧立即查看>> 【限時(shí)免費(fèi)】物理場(chǎng)仿真助力生物醫(yī)學(xué)領(lǐng)域技術(shù)創(chuàng)新
-
精彩回顧立即查看>> 【直播】 智測(cè)未來(lái)·2026海克斯康春季產(chǎn)品創(chuàng)新日
-
精彩回顧立即查看>> 【線下論壇】新唐科技×芯唐南京 2026 年度研討會(huì)
-
精彩回顧立即查看>> OFweek 2026(第十五屆)中國(guó)機(jī)器人產(chǎn)業(yè)大會(huì)
-
精彩回顧立即查看>> 維科杯· OFweek 2025中國(guó)機(jī)器人行業(yè)年度評(píng)選
推薦專題
-
2 華為,重大突破!
- 1 人形機(jī)器人“第一股”來(lái)了!宇樹(shù)科技即將上會(huì)
- 2 全球股市陷AI獨(dú)大結(jié)構(gòu)性瘋狂
- 3 AI狂歡遇上油價(jià)破百,全球股市還能漲多久? | 產(chǎn)聯(lián)看全球
- 4 DeepSeek融資500億,梁文鋒難逃資本局
- 5 谷歌2026 I/O大會(huì)完整回顧:模型依然重要,但智能體正在接管一切
- 6 全球資本,重倉(cāng)中國(guó)機(jī)器人
- 7 Figure AI 交付突破350臺(tái),陪跑特斯拉會(huì)迎來(lái)iPhone 時(shí)刻嗎?
- 8 Anthropic發(fā)布2028年全球AI領(lǐng)導(dǎo)力的兩種情景報(bào)告
- 9 “國(guó)產(chǎn)GPU第一股”摩爾線程首季扭虧,但造血能力仍待考驗(yàn)
- 10 特斯拉宣布監(jiān)督版FSD登陸中國(guó)?
- 高級(jí)軟件工程師 廣東省/深圳市
- 自動(dòng)化高級(jí)工程師 廣東省/深圳市
- 光器件研發(fā)工程師 福建省/福州市
- 銷(xiāo)售總監(jiān)(光器件) 北京市/海淀區(qū)
- 激光器高級(jí)銷(xiāo)售經(jīng)理 上海市/虹口區(qū)
- 光器件物理工程師 北京市/海淀區(qū)
- 激光研發(fā)工程師 北京市/昌平區(qū)
- 技術(shù)專家 廣東省/江門(mén)市
- 封裝工程師 北京市/海淀區(qū)
- 結(jié)構(gòu)工程師 廣東省/深圳市



分享





