實現(xiàn)對二值化后的某一像素值做修改
使用OpenCV的findNonZero函數(shù)找到所有非零(也就是像素值為255)的像素,然后遍歷這些像素并修改他們的值。示例代碼:
import cv2
import numpy as np
# 加載并二值化圖像
img = cv2.imread('image.png', 0)
ret, img = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)
# 找到所有非零像素
non_zero_pixels = np.where(img == 255)
# 遍歷并修改非零像素的值
for x, y in zip(*non_zero_pixels):
img[x, y] = 20 # 將像素值修改為0
# 保存修改后的圖像
cv2.imwrite('modified_image.png', img)
mask疊加
mask疊加的方法:首先創(chuàng)建一個和mask大小一樣的且都為0的矩陣,然后,遍歷mask,使用cv2.add相加。
import cv2
import glob
import numpy as np
from natsort import os_sorted
imageList=glob.glob('mask/*.jpg')
count_imag=len(imageList)
image_value=np.zeros((720, 1280),dtype = np.uint8)
for i,img_path in enumerate(imageList):
imag_name=img_path.replace('\\','/').split('/')[-1]
img=cv2.imread(img_path,cv2.IMREAD_GRAYSCALE)
th, threshed = cv2.threshold(img, 254.1, 255, cv2.THRESH_BINARY)
image_value=cv2.add(image_value,threshed)
th, threshed = cv2.threshold(image_value, 250, 255, cv2.THRESH_BINARY)
print(threshed)
#使用opencv顯示圖像
cv2.imshow('black image', threshed)
cv2.waitKey(0)
摘要
本專欄是講解如何改進Yolov8的專欄。改進方法采用了最新的論文提到的方法。改進的方法包括:增加注意力機制、更換卷積、更換block、更換backbone、更換head、更換優(yōu)化器等;每篇文章提供了一種到N種改進方法。
評測用的數(shù)據(jù)集是我自己標注的數(shù)據(jù)集,里面包含32種飛機。每種改進方法我都做了測評,并與官方的模型做對比。
代碼和PDF版本的文章,我在驗證無誤后會上傳到百度網(wǎng)盤中,方便大家下載使用。
這個專欄,求質(zhì)不求量,爭取盡心盡力打造精品專欄?。?!
謝謝大家支持!??!
YoloV8改進策略:基于分層注意力的FasterViT,讓YoloV8實現(xiàn)性能的飛躍
YoloV8改進策略:基于分層注意力的FasterViT,讓YoloV8實現(xiàn)性能的飛躍
這篇文章向大家展示如何使用FasterViT改進YoloV8,我嘗試了幾種方法,選出了三種效果比較好的方法推薦給大家。
FasterViT結(jié)合了cnn的快速局部表示學習和ViT的全局建模特性的優(yōu)點。新提出的分層注意力(HAT)方法將具有二次復雜度的全局自注意力分解為具有減少計算成本的多級注意力。我們受益于基于窗口的高效自我關注。每個窗口都可以訪問參與局部和全局表示學習的專用載體Token。在高層次上,全局的自我關注使高效的跨窗口通信能夠以較低的成本實現(xiàn)。FasterViT在精度與圖像吞吐量方面達到了SOTA Pareto-front。
YoloV8改進策略:InceptionNext主干替換YoloV8和YoloV5的主干
YoloV8改進策略:InceptionNext主干替換YoloV8和YoloV5的主干
這篇文章主要講解如何使用InceptionNext主干網(wǎng)絡替換YoloV8和YoloV5的主干。更改了InceptionNext網(wǎng)絡結(jié)構,和Yolov5、YoloV8的架構。
YoloV8改進策略:輕量級的CloFormer助力Yolov8在速度和精度上實現(xiàn)雙雙提升
YoloV8改進策略:輕量級的CloFormer助力Yolov8在速度和精度上實現(xiàn)雙雙提升
CloFormer是清華大學在今年發(fā)表的輕量級主干網(wǎng)絡,引入了AttnConv,一種attention風格的卷積算子。所提出的AttnConv使用共享權重來聚合局部信息,并配置精心設計的上下文感知權重來增強局部特征。AttnConv和普通attention的結(jié)合使用池化來減少CloFormer中的FLOPs,使模型能夠感知高頻和低頻信息。
YoloV8改進策略:InceptionNeXt和YoloV8完美結(jié)合,讓YoloV8大放異彩
YoloV8改進策略:InceptionNeXt和YoloV8完美結(jié)合,讓YoloV8大放異彩
InceptionNeXt是今年顏水成團隊發(fā)布的一篇論文,將ConvNext和Inception的思想融合,即IncepitonNeXt。InceptionNeXt-T實現(xiàn)了比convnext - t高1.6倍的訓練吞吐量,并在ImageNet- 1K上實現(xiàn)了0.2%的top-1精度提高。
YoloV8改進策略:新出爐的EMA注意力機制助力YoloV8更加強大
YoloV8改進策略:新出爐的EMA注意力機制助力YoloV8更加強大
EMA注意力機制是今年新的高效的多尺度注意力模塊。以保留每個通道上的信息和降低計算開銷為目標,將部分通道重塑為批量維度,并將通道維度分組為多個子特征,使空間語義特征在每個特征組中均勻分布。具體來說,除了對全局信息進行編碼以重新校準每個并行分支中的通道權重外,還通過跨維度交互進一步聚合兩個并行分支的輸出特征,以捕獲像素級成對關系。
YoloV8改進策略:VanillaNet極簡主義網(wǎng)絡,大大降低YoloV8的參數(shù)
YoloV8改進策略:VanillaNet極簡主義網(wǎng)絡,大大降低YoloV8的參數(shù)
VanillaNet,一個包含優(yōu)雅設計的神經(jīng)網(wǎng)絡架構。通過避免高深度,shotcut和復雜的操作,如自主意力,VanillaNet令人耳目一新的簡潔,但非常強大。每一層都被精心制作得緊湊而直接,非線性激活函數(shù)在訓練后被修剪以恢復原始結(jié)構。VanillaNet克服了固有復雜性的挑戰(zhàn),使其成為資源受限環(huán)境的理想選擇。其易于理解和高度簡化的架構為高效部署提供了新的可能性。大量的實驗表明,VanillaNet提供的性能與著名的深度神經(jīng)網(wǎng)絡和視覺轉(zhuǎn)換器相當,展示了極簡主義在深度學習中的力量。VanillaNet的這一富有遠見的旅程具有重新定義景觀和挑戰(zhàn)基礎模型現(xiàn)狀的巨大潛力,為優(yōu)雅有效的模型設計開辟了一條新的道路。
YoloV8改進策略:RFAConv模塊即插即用,實現(xiàn)YoloV8絲滑上分
YoloV8改進策略:RFAConv模塊即插即用,實現(xiàn)YoloV8絲滑上分
RFAConv是一種新的注意力機制,稱為感受野注意力(RFA)。卷積塊注意力模塊(CBAM)和協(xié)調(diào)注意力模塊(CA)只關注空間特征,不能完全解決卷積核參數(shù)共享的問題,但在RFA中,感受野空間特征不僅集中,而且為大尺寸卷積核提供了良好的注意力權重。RFA設計的感受野注意力卷積運算(RFAConv)可以被認為是取代標準卷積的一種新方法,它帶來的計算成本和許多參數(shù)幾乎可以忽略不計。由于作者沒有開源我自己復現(xiàn)了一版,并嘗試將其加入到Y(jié)oloV8網(wǎng)絡中。
YoloV8改進策略:讓SeaFormer走進Yolov8的視野,輕量高效的注意力模塊展現(xiàn)出無與倫比的魅力
YoloV8改進策略:讓SeaFormer走進Yolov8的視野,輕量高效的注意力模塊展現(xiàn)出無與倫比的魅力
SeaFormer使用壓縮軸和細節(jié)增強的方法設計了一個通用的注意力塊。它可以進一步用于創(chuàng)建一系列具有卓越成本效益的骨干體系結(jié)構。再加上一個輕分割頭,我們在基于arm的移動設備上在ADE20K和cityscape數(shù)據(jù)集上實現(xiàn)了分割精度和延遲之間的最佳權衡。關鍵的是,我們以更好的性能和更低的延遲擊敗了適合移動設備的競爭對手和基于transformer的對手,而且沒有花哨的東西。
YoloV8改進策略:將DCN v1與v2運用到Y(jié)oloV8中,化身成上分小黑子
YoloV8改進策略:將DCN v1與v2運用到Y(jié)oloV8中,化身成上分小黑子
嘗試用DCNv1與DCNv2代替普通的卷積!
YoloV8改進策略:基于雙層路由注意力的視覺Transformer提升YoloV8的檢測能力
YoloV8改進策略:基于雙層路由注意力的視覺Transformer提升YoloV8的檢測能力
雙層路由注意力實現(xiàn)具有內(nèi)容感知的更靈活的計算分配。利用稀疏性來節(jié)省計算和內(nèi)存,同時只涉及適用于GPU的密集矩陣乘法。用所提出的雙層路由注意力建立了一個新的通用視覺transformer,稱為BiFormer。
YoloV8改進策略:來自谷歌最新的優(yōu)化器——Lion,在速度和精度上雙雙提升。Adam表示年輕人不講武德
YoloV8改進策略:來自谷歌最新的優(yōu)化器——Lion,在速度和精度上雙雙提升。Adam表示年輕人不講武德
Lion將ViT在ImageNet上的準確率提高了2%,并在JFT上節(jié)省了高達5倍的預訓練計算。在視覺-語言對比學習方面,在ImageNet上實現(xiàn)了88.3%的零樣本和91.1%的微調(diào)精度,分別超過了之前的最佳結(jié)果2%和0.1%。在擴散模型上,Lion通過獲得更好的FID分數(shù)并將訓練計算量減少了2.3倍,超越了Adam。在自回歸、掩碼語言建模和微調(diào)方面,Lion表現(xiàn)出與Adam類似或更好的性能。對Lion的分析表明,其性能增益隨著訓練批大小的增加而增長。由于符號函數(shù)產(chǎn)生的更新范數(shù)更大,它還需要比Adam更小的學習率。
YoloV8改進策略:Conv2Former與YoloV8深度融合,極簡網(wǎng)絡,極高性能
YoloV8改進策略:Conv2Former與YoloV8深度融合,極簡網(wǎng)絡,極高性能
Conv2Former是在ConvNeXt基礎上,做了進一步的優(yōu)化,性能得到了提升。
YoloV8改進策略:將ConvNextV2與YoloV8激情碰撞,能迸發(fā)出什么樣的火花呢?
YoloV8改進策略:將ConvNextV2與YoloV8激情碰撞,能迸發(fā)出什么樣的火花呢
ConvNextV2將一個全卷積掩碼自編碼器框架和一個新的全局響應歸一化(GRN)層,可以添加到ConvNeXt架構中,以增強通道間的特征競爭,它顯著提高了純ConvNets在各種識別基準上的性能,包括ImageNet分類、COCO檢測和ADE20K分割。
YoloV8改進策略:將CIoU替換成Wise-IoU,幸福漲點,值得擁有,還支持EIoU、GIoU、DIoU、SIoU無縫替換。
YoloV8改進策略:將CIoU替換成Wise-IoU,幸福漲點,值得擁有,還支持EIoU、GIoU、DIoU、SIoU無縫替換。
這篇文章講述如何在yolov8中,使用Wise-IoU漲點。首先,翻譯了論文,讓大家了解什么是Wise IoU,以及Wise IoU的三個版本。接下來講解如何在yolov8中添加Wise IoU。
YoloV8改進策略:增加分支,減少漏檢
YoloV8改進策略:增加分支,減少漏檢
通過增加一個分支,來提高小目標的檢測
YoloV8改進策略:將FasterNet與YoloV8深度融合,打造更快更強的檢測網(wǎng)絡
YoloV8改進策略:將FasterNet與YoloV8深度融合,打造更快更強的檢測網(wǎng)絡
fastternet,這是一種新的神經(jīng)網(wǎng)絡家族,它在各種設備上獲得了比其他網(wǎng)絡更高的運行速度,而不影響各種視覺任務的準確性。
文章來源:http://www.zghlxwxcb.cn/news/detail-765436.html
Yolov8網(wǎng)絡詳解與實戰(zhàn)(附數(shù)據(jù)集)
Yolov8網(wǎng)絡詳解與實戰(zhàn)(附數(shù)據(jù)集)文章來源地址http://www.zghlxwxcb.cn/news/detail-765436.html
到了這里,關于python opencv 實現(xiàn)對二值化后的某一像素值做修改和mask疊加的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!