国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一些常見的圖像分類任務(wù)中 額外支持的8種數(shù)據(jù)增廣方法

機(jī)器人創(chuàng)新生態(tài) ? 來源:機(jī)器人創(chuàng)新生態(tài) ? 作者:機(jī)器人創(chuàng)新生態(tài) ? 2020-09-23 10:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如果要把深度學(xué)習(xí)開發(fā)過程中幾個(gè)環(huán)節(jié)按重要程度排個(gè)序的話,相信準(zhǔn)備訓(xùn)練數(shù)據(jù)肯定能排在前幾位。要知道一個(gè)模型網(wǎng)絡(luò)被編寫出來后,也只是一坨代碼而已,和智能基本不沾邊,它只有通過學(xué)習(xí)大量的數(shù)據(jù),才能學(xué)會(huì)如何作推理。因此訓(xùn)練數(shù)據(jù)其實(shí)和一樣?xùn)|西非常像!——武俠小說中的神功秘笈,學(xué)之前菜鳥一只,學(xué)之后一統(tǒng)江湖!

但很可惜的是,訓(xùn)練數(shù)據(jù)和秘笈還有一個(gè)特點(diǎn)很相似,那就是可遇而不可求!也就是說很難獲取,除了那些公共數(shù)據(jù)集之外,如果用戶想基于自己的業(yè)務(wù)場(chǎng)景準(zhǔn)備數(shù)據(jù)的話,不僅數(shù)據(jù)的生產(chǎn)和標(biāo)注過程會(huì)比較復(fù)雜,而且一般需要的數(shù)量規(guī)模也會(huì)非常龐大,因?yàn)橹挥谐渥愕臄?shù)據(jù),才能確保模型訓(xùn)練的效果,這導(dǎo)致數(shù)據(jù)集的制作成本往往非常高。這個(gè)情況在計(jì)算機(jī)視覺領(lǐng)域尤甚,因?yàn)閳D像要一張一張拍攝與標(biāo)注,要是搞個(gè)幾十萬圖片,想想都讓人“不寒而栗”! 為了應(yīng)對(duì)上述問題,在計(jì)算機(jī)視覺領(lǐng)域中,圖像數(shù)據(jù)增廣是一種常用的解決方法,常用于數(shù)據(jù)量不足或者模型參數(shù)較多的場(chǎng)景。如果用戶手中數(shù)據(jù)有限的話,則可以使用數(shù)據(jù)增廣的方法擴(kuò)充數(shù)據(jù)集。一些常見的圖像分類任務(wù)中,例如ImageNet一千種物體分類,在預(yù)處理階段會(huì)使用一些標(biāo)準(zhǔn)的數(shù)據(jù)增廣方法,包括隨機(jī)裁剪和翻轉(zhuǎn)。除了這些標(biāo)準(zhǔn)的數(shù)據(jù)增廣方法之外,飛槳的圖像分類套件PaddleClas還會(huì)額外支持8種數(shù)據(jù)增廣方法,下面將為大家逐一講解。

下文所有的代碼都來自PaddleClas:

GitHub 鏈接:

https://github.com/PaddlePaddle/PaddleClas

Gitee 鏈接:

https://gitee.com/paddlepaddle/PaddleClas

8大數(shù)據(jù)增廣方法

首先咱們先來看看以ImageNet圖像分類任務(wù)為代表的標(biāo)準(zhǔn)數(shù)據(jù)增廣方法,該方法的操作過程可以分為以下幾個(gè)步驟:

圖像解碼,也就是將圖像轉(zhuǎn)為Numpy格式的數(shù)據(jù),簡(jiǎn)寫為 ImageDecode。

圖像隨機(jī)裁剪,隨機(jī)將圖像的長(zhǎng)寬均裁剪為 224 大小,簡(jiǎn)寫為 RandCrop。

水平方向隨機(jī)翻轉(zhuǎn),簡(jiǎn)寫為 RandFlip。

圖像數(shù)據(jù)的歸一化,簡(jiǎn)寫為 Normalize。

圖像數(shù)據(jù)的重排。圖像的數(shù)據(jù)格式為[H, W, C](即高度、寬度和通道數(shù)),而神經(jīng)網(wǎng)絡(luò)使用的訓(xùn)練數(shù)據(jù)的格式為[C, H, W],因此需要對(duì)圖像數(shù)據(jù)重新排列,例如[224, 224, 3]變?yōu)閇3, 224, 224],簡(jiǎn)寫為 Transpose。

多幅圖像數(shù)據(jù)組成 batch 數(shù)據(jù),如 BatchSize 個(gè)[3, 224, 224]的圖像數(shù)據(jù)拼組成[batch-size, 3, 224, 224],簡(jiǎn)寫為 Batch。

相比于上述標(biāo)準(zhǔn)的圖像增廣方法,研究者也提出了很多改進(jìn)的圖像增廣策略,這些策略均是在標(biāo)準(zhǔn)增廣方法的不同階段插入一定的操作,基于這些策略操作所處的不同階段,大概分為三類:

圖像變換類:對(duì) RandCrop 后的 224 的圖像進(jìn)行一些變換,包括AutoAugment和RandAugment。

圖像裁剪類:對(duì)Transpose 后的 224 的圖像進(jìn)行一些裁剪,包括CutOut、RandErasing、HideAndSeek和GridMask。

圖像混疊:對(duì) Batch 后的數(shù)據(jù)進(jìn)行混合或疊加,包括Mixup和Cutmix。

PaddleClas中集成了上述所有的數(shù)據(jù)增廣策略,每種數(shù)據(jù)增廣策略的參考論文與參考開源代碼均在下面的介紹中列出。下文將介紹這些策略的原理與使用方法,并以下圖為例,對(duì)變換后的效果進(jìn)行可視化。

圖像變換類

通過組合一些圖像增廣的子策略對(duì)圖像進(jìn)行修改和跳轉(zhuǎn),這些子策略包括亮度變換、對(duì)比度增強(qiáng)、銳化等。基于策略組合的規(guī)則不同,可以劃分為AutoAugment和RandAugment兩種方式。

01

AutoAugment

論文地址:

https://arxiv.org/abs/1805.09501v1

不同于常規(guī)的人工設(shè)計(jì)圖像增廣方式,AutoAugment是在一系列圖像增廣子策略的搜索空間中通過搜索算法找到并組合成適合特定數(shù)據(jù)集的圖像增廣方案。針對(duì)ImageNet數(shù)據(jù)集,最終搜索出來的數(shù)據(jù)增廣方案包含 25 個(gè)子策略組合,每個(gè)子策略中都包含兩種變換,針對(duì)每幅圖像都隨機(jī)的挑選一個(gè)子策略組合,然后以一定的概率來決定是否執(zhí)行子策略中的每種變換。 PaddleClas中AutoAugment的使用方法如下所示。 fromppcls.data.imaugimportDecodeImage
fromppcls.data.imaugimportResizeImage
fromppcls.data.imaugimportImageNetPolicy
fromppcls.data.imaugimporttransform

size=224
#圖像解碼
decode_op=DecodeImage()
#圖像隨機(jī)裁剪
resize_op=ResizeImage(size=(size,size))
#使用AutoAugment圖像增廣方法
autoaugment_op=ImageNetPolicy()

ops=[decode_op,resize_op,autoaugment_op]
#圖像路徑
imgs_dir=“/imgdir/xxx.jpg”
fnames=os.listdir(imgs_dir)
forfinfnames:
data=open(os.path.join(imgs_dir,f)).read()
img=transform(data,ops) 變換結(jié)果如下圖所示。

02

RandAugment

論文地址: https://arxiv.org/pdf/1909.13719.pdf AutoAugment 的搜索方法比較暴力,直接在數(shù)據(jù)集上搜索針對(duì)該數(shù)據(jù)集的最優(yōu)策略,計(jì)算量會(huì)很大。在 RandAugment對(duì)應(yīng)的論文中作者發(fā)現(xiàn),針對(duì)越大的模型,越大的數(shù)據(jù)集,使用 AutoAugment 方式搜索到的增廣方式產(chǎn)生的收益也就越小;而且這種搜索出的最優(yōu)策略是針對(duì)指定數(shù)據(jù)集的,遷移能力較差,并不太適合遷移到其他數(shù)據(jù)集上。 在 RandAugment 中,作者提出了一種隨機(jī)增廣的方式,不再像 AutoAugment 中那樣使用特定的概率確定是否使用某種子策略,而是所有的子策略都會(huì)以同樣的概率被選擇到,論文中的實(shí)驗(yàn)也表明這種數(shù)據(jù)增廣方式即使在大模型的訓(xùn)練中也具有很好的效果。 PaddleClas中RandAugment的使用方法如下所示。 fromppcls.data.imaugimportDecodeImage
fromppcls.data.imaugimportResizeImage
fromppcls.data.imaugimportRandAugment
fromppcls.data.imaugimporttransform

size=224
#圖像解碼
decode_op=DecodeImage()
#圖像隨機(jī)裁剪
resize_op=ResizeImage(size=(size,size))
#使用RandAugment圖像增廣方法
randaugment_op=RandAugment()

ops=[decode_op,resize_op,randaugment_op]
#圖像路徑
imgs_dir=“/imgdir/xxx.jpg”
fnames=os.listdir(imgs_dir)
forfinfnames:
data=open(os.path.join(imgs_dir,f)).read()
img=transform(data,ops) 變換結(jié)果如下圖所示。

圖像裁剪類

圖像裁剪類主要是對(duì)Transpose 后的 224 的圖像進(jìn)行一些裁剪,即裁剪掉部分圖像,或者也可以理解為對(duì)部分圖像做遮蓋,共有CutOut、RandErasing、HideAndSeek和GridMask四種方法。

03

Cutout

論文地址:

https://arxiv.org/abs/1708.04552

Cutout 可以理解為 Dropout 的一種擴(kuò)展操作,不同的是 Dropout 是對(duì)圖像經(jīng)過網(wǎng)絡(luò)后生成的特征進(jìn)行遮擋,而 Cutout 是直接對(duì)輸入的圖像進(jìn)行遮擋,相對(duì)于Dropout對(duì)噪聲的魯棒性更好。作者在論文中也進(jìn)行了說明,這樣做法有以下兩點(diǎn)優(yōu)勢(shì):

通過 Cutout 可以模擬真實(shí)場(chǎng)景中主體被部分遮擋時(shí)的分類場(chǎng)景。

可以促進(jìn)模型充分利用圖像中更多的內(nèi)容來進(jìn)行分類,防止網(wǎng)絡(luò)只關(guān)注顯著性的圖像區(qū)域,從而發(fā)生過擬合。

PaddleClas中Cutout的使用方法如下所示。 fromppcls.data.imaugimportDecodeImage
fromppcls.data.imaugimportResizeImage
fromppcls.data.imaugimportCutout
fromppcls.data.imaugimporttransform

size=224
#圖像解碼
decode_op=DecodeImage()
#圖像隨機(jī)裁剪
resize_op=ResizeImage(size=(size,size))
#使用Cutout圖像增廣方法
cutout_op=Cutout(n_holes=1,length=112)

ops=[decode_op,resize_op,cutout_op]
#圖像路徑
imgs_dir=“/imgdir/xxx.jpg”
fnames=os.listdir(imgs_dir)
forfinfnames:
data=open(os.path.join(imgs_dir,f)).read()
img=transform(data,ops) 裁剪結(jié)果如下圖所示:

04

RandomErasing

論文地址:

https://arxiv.org/pdf/1708.04896.pdf

RandomErasing 與 Cutout 方法類似,同樣是為了解決訓(xùn)練出的模型在有遮擋數(shù)據(jù)上泛化能力較差的問題,作者在論文中也指出,隨機(jī)裁剪的方式與隨機(jī)水平翻轉(zhuǎn)具有一定的互補(bǔ)性。作者也在行人再識(shí)別(REID)上驗(yàn)證了該方法的有效性。與Cutout不同的是,在RandomErasing中,圖片以一定的概率接受該種預(yù)處理方法,生成掩碼的尺寸大小與長(zhǎng)寬比也是根據(jù)預(yù)設(shè)的超參數(shù)隨機(jī)生成。 PaddleClas中RandomErasing的使用方法如下所示。 fromppcls.data.imaugimportDecodeImage
fromppcls.data.imaugimportResizeImage
fromppcls.data.imaugimportToCHWImage
fromppcls.data.imaugimportRandomErasing
fromppcls.data.imaugimporttransform

size=224
#圖像解碼
decode_op=DecodeImage()
#圖像隨機(jī)裁剪
resize_op=ResizeImage(size=(size,size))
#使用RandomErasing圖像增廣方法
randomerasing_op=RandomErasing()

ops=[decode_op,resize_op,tochw_op,randomerasing_op]
#圖像路徑
imgs_dir=“/imgdir/xxx.jpg”
fnames=os.listdir(imgs_dir)
forfinfnames:
data=open(os.path.join(imgs_dir,f)).read()
img=transform(data,ops)
img=img.transpose((1,2,0)) 裁剪結(jié)果如下圖所示。

05

HideAndSeek

論文地址:

https://arxiv.org/pdf/1811.02545.pdf

HideAndSeek方法將圖像分為若干大小相同的區(qū)域塊(patch),對(duì)于每塊區(qū)域,都以一定的概率生成掩碼,如下圖所示,可能是完全遮擋、完全不遮擋或者遮擋部分。

PaddleClas中HideAndSeek的使用方法如下所示: fromppcls.data.imaugimportDecodeImage
fromppcls.data.imaugimportResizeImage
fromppcls.data.imaugimportToCHWImage
fromppcls.data.imaugimportHideAndSeek
fromppcls.data.imaugimporttransform

size=224
#圖像解碼
decode_op=DecodeImage()
#圖像隨機(jī)裁剪
resize_op=ResizeImage(size=(size,size))
#使用HideAndSeek圖像增廣方法
hide_and_seek_op=HideAndSeek()

ops=[decode_op,resize_op,tochw_op,hide_and_seek_op]
#圖像路徑
imgs_dir=“/imgdir/xxx.jpg”
fnames=os.listdir(imgs_dir)
forfinfnames:
data=open(os.path.join(imgs_dir,f)).read()
img=transform(data,ops)
img=img.transpose((1,2,0)) 裁剪結(jié)果如下圖所示。

06

GridMask

論文地址:

https://arxiv.org/abs/2001.04086

作者在論文中指出,之前的圖像裁剪方法存在兩個(gè)問題,如下圖所示:

過度刪除區(qū)域可能造成目標(biāo)主體大部分甚至全部被刪除,或者導(dǎo)致上下文信息的丟失,導(dǎo)致增廣后的數(shù)據(jù)成為噪聲數(shù)據(jù);

保留過多的區(qū)域,對(duì)目標(biāo)主體及上下文基本產(chǎn)生不了什么影響,失去增廣的意義。

因此如何避免過度刪除或過度保留成為需要解決的核心問題。GridMask是通過生成一個(gè)與原圖分辨率相同的掩碼,并將掩碼進(jìn)行隨機(jī)翻轉(zhuǎn),與原圖相乘,從而得到增廣后的圖像,通過超參數(shù)控制生成的掩碼網(wǎng)格的大小。 在訓(xùn)練過程中,有兩種以下使用方法:

設(shè)置一個(gè)概率p,從訓(xùn)練開始就對(duì)圖片以概率p使用GridMask進(jìn)行增廣。

一開始設(shè)置增廣概率為0,隨著迭代輪數(shù)增加,對(duì)訓(xùn)練圖片進(jìn)行GridMask增廣的概率逐漸增大,最后變?yōu)閜。

論文中表示,經(jīng)過驗(yàn)證后,上述第二種方法的訓(xùn)練效果更好一些。 PaddleClas中GridMask的使用方法如下所示。 fromdata.imaugimportDecodeImage
fromdata.imaugimportResizeImage
fromdata.imaugimportToCHWImage
fromdata.imaugimportGridMask
fromdata.imaugimporttransform

size=224
#圖像解碼
decode_op=DecodeImage()
#圖像隨機(jī)裁剪
resize_op=ResizeImage(size=(size,size))
#圖像數(shù)據(jù)的重排
tochw_op=ToCHWImage()
#使用GridMask圖像增廣方法
gridmask_op=GridMask(d1=96,d2=224,rotate=1,ratio=0.6,mode=1,prob=0.8)

ops=[decode_op,resize_op,tochw_op,gridmask_op]
#圖像路徑
imgs_dir=“/imgdir/xxx.jpg”
fnames=os.listdir(imgs_dir)
forfinfnames:
data=open(os.path.join(imgs_dir,f)).read()
img=transform(data,ops)
img=img.transpose((1,2,0)) 結(jié)果如下圖所示:

圖像混疊

前文所述的圖像變換與圖像裁剪都是針對(duì)單幅圖像進(jìn)行的操作,而圖像混疊是對(duì)兩幅圖像進(jìn)行融合,生成一幅圖像,Mixup和Cutmix兩種方法的主要區(qū)別為混疊的方式不太一樣。

07

Mixup

論文地址: https://arxiv.org/pdf/1710.09412.pdf Mixup是最先提出的圖像混疊增廣方案,其原理就是直接對(duì)兩幅圖的像素以一個(gè)隨機(jī)的比例進(jìn)行相加,不僅簡(jiǎn)單,而且方便實(shí)現(xiàn),在圖像分類和目標(biāo)檢測(cè)領(lǐng)域上都取得了不錯(cuò)的效果。為了便于實(shí)現(xiàn),通常只對(duì)一個(gè) batch 內(nèi)的數(shù)據(jù)進(jìn)行混疊,在Cutmix中也是如此。 如下是imaug中的實(shí)現(xiàn),需要指出的是,下述實(shí)現(xiàn)會(huì)出現(xiàn)對(duì)同一幅進(jìn)行相加的情況,也就是最終得到的圖和原圖一樣,隨著 batch-size 的增加這種情況出現(xiàn)的概率也會(huì)逐漸減小。 PaddleClas中Mixup的使用方法如下所示。 fromppcls.data.imaugimportDecodeImage
fromppcls.data.imaugimportResizeImage
fromppcls.data.imaugimportToCHWImage
fromppcls.data.imaugimporttransform
fromppcls.data.imaugimportMixupOperator

size=224
#圖像解碼
decode_op=DecodeImage()
#圖像隨機(jī)裁剪
resize_op=ResizeImage(size=(size,size))
#圖像數(shù)據(jù)的重排
tochw_op=ToCHWImage()
#使用HideAndSeek圖像增廣方法
hide_and_seek_op=HideAndSeek()
#使用Mixup圖像增廣方法
mixup_op=MixupOperator()

ops=[decode_op,resize_op,tochw_op]

imgs_dir=“/imgdir/xxx.jpg”#圖像路徑
batch=[]
fnames=os.listdir(imgs_dir)
foridx,finenumerate(fnames):
data=open(os.path.join(imgs_dir,f)).read()
img=transform(data,ops)
batch.append((img,idx))#fakelabel

new_batch=mixup_op(batch) 混疊結(jié)果如下圖所示。

08

Cutmix

論文地址:

https://arxiv.org/pdf/1905.04899v2.pdf

與 Mixup 直接對(duì)兩幅圖進(jìn)行相加不一樣,Cutmix 是從另一幅圖中隨機(jī)裁剪出一個(gè) ROI(region of interest, 感興趣區(qū)域),然后覆蓋當(dāng)前圖像中對(duì)應(yīng)的區(qū)域,代碼實(shí)現(xiàn)如下所示: fromppcls.data.imaugimportDecodeImage
fromppcls.data.imaugimportResizeImage
fromppcls.data.imaugimportToCHWImage
fromppcls.data.imaugimporttransform
fromppcls.data.imaugimportCutmixOperator

size=224

#圖像解碼
decode_op=DecodeImage()
#圖像隨機(jī)裁剪
resize_op=ResizeImage(size=(size,size))
#圖像數(shù)據(jù)的重排
tochw_op=ToCHWImage()
#使用HideAndSeek圖像增廣方法
hide_and_seek_op=HideAndSeek()
#使用Cutmix圖像增廣方法
cutmix_op=CutmixOperator()


ops=[decode_op,resize_op,tochw_op]

imgs_dir=“/imgdir/xxx.jpg”#圖像路徑

batch=[]
fnames=os.listdir(imgs_dir)
foridx,finenumerate(fnames):
data=open(os.path.join(imgs_dir,f)).read()
img=transform(data,ops)
batch.append((img,idx))#fakelabel

new_batch=cutmix_op(batch) 混疊結(jié)果如下圖所示:

實(shí)驗(yàn)

經(jīng)過實(shí)驗(yàn)驗(yàn)證,在ImageNet1k數(shù)據(jù)集上基于PaddleClas使用不同數(shù)據(jù)增廣方式的分類精度如下所示,可見通過數(shù)據(jù)增廣方式可以有效提升模型的準(zhǔn)確率。

注意: 在這里的實(shí)驗(yàn)中,為了便于對(duì)比,將l2 decay固定設(shè)置為1e-4,在實(shí)際使用中,更小的l2 decay一般效果會(huì)更好。結(jié)合數(shù)據(jù)增廣,將l2 decay由1e-4減小為7e-5均能帶來至少0.3~0.5%的精度提升。

PaddleClas數(shù)據(jù)增廣避坑

指南以及部分注意事項(xiàng)

最后再為大家介紹幾個(gè)PaddleClas數(shù)據(jù)增廣使用方面的小Trick。

在使用圖像混疊類的數(shù)據(jù)處理時(shí),需要將配置文件中的use_mix設(shè)置為True,另外由于圖像混疊時(shí)需對(duì)label進(jìn)行混疊,無法計(jì)算訓(xùn)練數(shù)據(jù)的準(zhǔn)確率,所以在訓(xùn)練過程中沒有打印訓(xùn)練準(zhǔn)確率。

在使用數(shù)據(jù)增廣后,由于訓(xùn)練數(shù)據(jù)更難,所以訓(xùn)練損失函數(shù)可能較大,訓(xùn)練集的準(zhǔn)確率相對(duì)較低,但其擁有更好的泛化能力,所以驗(yàn)證集的準(zhǔn)確率相對(duì)較高。

在使用數(shù)據(jù)增廣后,模型可能會(huì)趨于欠擬合狀態(tài),建議可以適當(dāng)?shù)恼{(diào)小l2_decay的值來獲得更高的驗(yàn)證集準(zhǔn)確率。

幾乎每一類圖像增廣均含有超參數(shù),PaddleClas在這里只提供了基于ImageNet-1k的超參數(shù),其他數(shù)據(jù)集需要用戶自己調(diào)試超參數(shù),當(dāng)然如果對(duì)于超參數(shù)的含義不太清楚的話,可以閱讀相關(guān)的論文,調(diào)試方法也可以參考訓(xùn)練技巧的章節(jié)

原文標(biāo)題:干貨 | 計(jì)算機(jī)視覺的數(shù)據(jù)增廣技術(shù)大盤點(diǎn)!附漲點(diǎn)神器,已開源!

文章出處:【微信公眾號(hào):機(jī)器人創(chuàng)新生態(tài)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴

原文標(biāo)題:干貨 | 計(jì)算機(jī)視覺的數(shù)據(jù)增廣技術(shù)大盤點(diǎn)!附漲點(diǎn)神器,已開源!

文章出處:【微信號(hào):robotplaces,微信公眾號(hào):機(jī)器人創(chuàng)新生態(tài)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    爬壁機(jī)器人磁鐵的一些常見問題

    爬壁機(jī)器人近幾年比較火,它是類能夠在垂直墻面、天花板、傾斜表面上移動(dòng)和作業(yè)的特種機(jī)器人,今天我們不聊其它,只聊下關(guān)于磁吸附應(yīng)用的磁鐵,以下是小編整理的關(guān)于爬壁機(jī)器人中磁鐵的一些常見
    的頭像 發(fā)表于 01-09 10:06 ?264次閱讀
    爬壁機(jī)器人磁鐵的<b class='flag-5'>一些</b><b class='flag-5'>常見</b>問題

    嵌入式的浮點(diǎn)型數(shù)據(jù)轉(zhuǎn)換為字節(jié)類型的三種方法

    MCU的存儲(chǔ)模塊中去。所以說要保存個(gè)浮點(diǎn)型數(shù)據(jù)到MCU前需要先把浮點(diǎn)型數(shù)據(jù)轉(zhuǎn)換成字節(jié)的形式。下面就來說說浮點(diǎn)型轉(zhuǎn)換為字節(jié)類型的一些
    發(fā)表于 01-07 06:28

    文說透了如何實(shí)現(xiàn)單片機(jī)的多任務(wù)并發(fā)!

    資源,并且避免出現(xiàn)資源爭(zhēng)搶和堵塞的情況。 在單片機(jī)多任務(wù)并發(fā)常見任務(wù)調(diào)度方式有兩: 1. 時(shí)間片輪轉(zhuǎn)法 時(shí)間片輪轉(zhuǎn)法是多
    發(fā)表于 01-06 06:46

    LED顯示屏常見故障分類及處理方法

    常見故障分類LED顯示屏常見故障分為三類:LED模組常見故障、室內(nèi)全彩顯示屏故障及戶外全彩顯示屏故障。針對(duì)每類故障,我們將詳細(xì)分析可能的原
    的頭像 發(fā)表于 12-18 15:48 ?1124次閱讀
    LED顯示屏<b class='flag-5'>常見</b>故障<b class='flag-5'>分類</b>及處理<b class='flag-5'>方法</b>

    PA300系列功率計(jì) :三種數(shù)據(jù)記錄方法詳解,應(yīng)對(duì)不同測(cè)試場(chǎng)景

    本文導(dǎo)讀致遠(yuǎn)儀器PA300系列功率計(jì)具有高精度、易集成、高性價(jià)比的特點(diǎn),廣泛應(yīng)用于光伏、家電、電源、電機(jī)等行業(yè)。本文介紹其三種數(shù)據(jù)記錄方法,適應(yīng)不同測(cè)試場(chǎng)景需求。PA300系列功率計(jì)功率計(jì)是一種
    的頭像 發(fā)表于 11-25 11:37 ?316次閱讀
    PA300系列功率計(jì) :三<b class='flag-5'>種數(shù)據(jù)</b>記錄<b class='flag-5'>方法</b>詳解,應(yīng)對(duì)不同測(cè)試場(chǎng)景

    基于級(jí)聯(lián)分類器的人臉檢測(cè)基本原理

    基于統(tǒng)計(jì)的方法。從高層的輸入輸出角度來描述,軟件輸入是圖像(可以表示為個(gè)uint8_t或者uint16_t的數(shù)組),輸出是檢測(cè)的結(jié)果,
    發(fā)表于 10-30 06:14

    蜂鳥E203的浮點(diǎn)指令集F的一些實(shí)現(xiàn)細(xì)節(jié)

    蜂鳥E203的浮點(diǎn)指令集F的一些實(shí)現(xiàn)細(xì)節(jié) 既然E203不是多發(fā)射,且為了節(jié)省面積,一些指令使用FPU內(nèi)的同個(gè)子模塊來執(zhí)行,即FPU同時(shí)只能進(jìn)行一種計(jì)算,我們只在FPU內(nèi)部署了11個(gè)
    發(fā)表于 10-24 08:57

    Vivado浮點(diǎn)數(shù)IP核的一些設(shè)置注意點(diǎn)

    Vivado浮點(diǎn)數(shù)IP核的一些設(shè)置注意點(diǎn) 我們?cè)趘ivado2018.3使用了Floating-point(7.1)IP核,可以自定義其計(jì)算種類及多模式選擇。有時(shí)多種計(jì)算可以用同個(gè)IP核實(shí)
    發(fā)表于 10-24 06:25

    在Ubuntu20.04系統(tǒng)訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗(yàn)

    本帖欲分享在Ubuntu20.04系統(tǒng)訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗(yàn)。我們采用jupyter notebook作為開發(fā)IDE,以TensorFlow2為訓(xùn)練框架,目標(biāo)是訓(xùn)練個(gè)手寫數(shù)字識(shí)別的神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 10-22 07:03

    在低功耗藍(lán)牙產(chǎn)品開發(fā)的過程,會(huì)涉及到一些參數(shù)的選擇和設(shè)定,這些參數(shù)是什么意思,該如何設(shè)定呢?(藍(lán)牙廣播)

    在低功耗藍(lán)牙產(chǎn)品開發(fā)的過程,會(huì)涉及到一些參數(shù)的選擇和設(shè)定,這些參數(shù)是什么意思,該如何設(shè)定呢?在此介紹一些: 藍(lán)牙的廣播類型(Advertising Type) 可連接廣播(ADV_IND):允許
    發(fā)表于 06-25 18:25

    CPU密集型任務(wù)開發(fā)指導(dǎo)

    CPU密集型任務(wù)是指需要占用系統(tǒng)資源處理大量計(jì)算能力的任務(wù),需要長(zhǎng)時(shí)間運(yùn)行,這段時(shí)間會(huì)阻塞線程其它事件的處理,不適宜放在主線程進(jìn)行。例如圖像處理、視頻編碼、數(shù)據(jù)分析等。 基于多線程并發(fā)
    發(fā)表于 06-19 06:05

    數(shù)字IC設(shè)計(jì):方法、技巧與實(shí)踐

    設(shè)計(jì)的流程逐步介紹前端設(shè)計(jì)需要的知識(shí)。其中第3章為構(gòu)架設(shè)計(jì),比較詳盡地介紹了構(gòu)架設(shè)計(jì)的任務(wù)一些應(yīng)當(dāng)考慮的問題和構(gòu)架設(shè)計(jì)的方法。第4章是RTL設(shè)計(jì)與仿真。首先介紹的是一些RTL的設(shè)計(jì)規(guī)
    發(fā)表于 05-28 16:06

    電子元器件的分類方式

    電子元器件可以按照不同的分類標(biāo)準(zhǔn)進(jìn)行分類,以下是一些常見分類方式。
    的頭像 發(fā)表于 04-16 14:52 ?2960次閱讀

    iMX8DXL有什么方法可以使所有與SPI相關(guān)的任務(wù)在單核工作?

    我們使用的是 iMX8DXL 處理器。有什么方法可以使所有與 SPI 相關(guān)的任務(wù)在單核工作?請(qǐng)告訴我們是否有任何程序或示例可以這樣做。
    發(fā)表于 03-31 06:47

    在STM32微控制器實(shí)現(xiàn)數(shù)據(jù)加密的方法

    在STM32微控制器實(shí)現(xiàn)數(shù)據(jù)加密,可以通過多種方法和技術(shù)來確保數(shù)據(jù)的安全性。以下是一些常見
    發(fā)表于 03-07 07:30