主頁 >  其他 > 音視頻開發進階——YUV與RGB的采樣與存盤格式

音視頻開發進階——YUV與RGB的采樣與存盤格式

2022-10-19 12:35:00 其他


img

 

在上一篇文章中,我們帶大家了解了視頻、影像、像素和色彩之間的關系,還初步認識了兩種常用的色彩空間,分別是大家比較熟悉的 RGB,以及更受視頻領域青睞的 YUV,今天,我們將繼續深入學習 RGB、YUV 的相關內容,進一步了解它們的常見采樣格式和存盤格式,

 

色彩的采樣格式和存盤格式影響我們處理影像的方式,只有使用正確的方式,才能呈現正確的影像效果,

 

RGB 的采樣和存盤

 

我們已經知道,影像由像素組成,而像素通過記錄色彩空間各分量呈現各種各樣的色彩,對于 RGB 色彩空間,其三個分量 R(紅)、G(綠)、B(藍),它們之間具有相關性,對于色彩的表示來說缺一不可,

 

所以,RGB 的每個像素都會完整采樣三個分量,采樣比例為 1:1:1(指每個分量的采樣數,而非每個分量的數值),也正是因為這種采樣要求,RGB 顏色空間在采集上不好進行資料壓縮,不太適用于視頻影像的編碼、傳輸,

 

RGB 三個分量采樣后,在記憶體中是依次排列存盤的,但是,它們的存盤順序不一定是字面描述的 R、G、B,不同的應用場景,因處理邏輯差異可能會使用不同的規則,比如,MATLAB 使用的存盤順序為 R、G、B,而 OpenCV 則使用 B、G、R,如下圖所示:

 

img

 

R、G、B 順序

 

img

 

B、G、R 順序

 

我們把 RGB 字面描述的分量順序,稱為字面序,將其實際存盤的分量順序,稱為位元組序,確定好色彩空間存盤的位元組序,是正確處理影像的前提,如果隨意對各分量進行讀取,可能會導致處理后的顏色出現例外,下圖,即為使用 RGB 順序讀取位元組序為 BGR 的圖片的效果,此時,由于將 B、R 分量混淆了,得到了錯誤的圖片顏色,

img

 

左一:原圖,存盤格式為 BGR;左二:使用 RGB 格式進行讀取

 

另外,大家還也會接觸到 BGRA 這樣的存盤格式(比如在 iOS、MAC 上處理攝像頭資料),其中的 A ,表示在 RGB 三個通道基礎上,增加了一個透明度通道 Alpha,用于調整色彩的透明度,實作更豐富的色彩效果,對于增加了透明度的RGB,同樣需要留意其實際的存盤順序,常見的有 BGRA、RGBA、ABGR 和 ARGB 等等,

 

總之,RGB 的采樣格式、存盤格式相對比較簡單,我們也不做過多的展開,正如上篇文章所述,在視頻處理領域,YUV 色彩空間才是主角,它的采樣格式、存盤格式相對于 RGB 也更加復雜

 

YUV的采樣和存盤

 

1、YUV 的采樣格式

 

大家已經知道,區別于 RGB 色彩空間,YUV 色彩空間的三個分量并非都參與顏色的表示,即便僅存在亮度分量 Y,也能呈現黑白灰的影像輪廓,而人眼對于色度分量 U、V 不是特別敏感,減少一些也不會太影響觀感,這種特性體現到采樣上,意味著允許我們少采集 U、V 分量、甚至于不采集 U、V 分量(黑白影像),從而在采集上實作可觀的資料壓縮,按 U、V 分量的采集方式不同,主流的 YUV 采樣格式有:YUV 4:4:4,YUV 4:2:2 和 YUV 4:2:0 幾種,

看到 “ YUV A:B:C ” 這種標識格式,大家是否很容易將其理解為 “ Y:U:V = A:B:C ”?這種理解是符合直覺的,但并不正確,實際上, "A:B:C" 格式并不是將 YUV 拆分為 3 個分量、然后按 A:B:C 的比例采集,而是基于一個 “寬度為 A 個像素、高度為 2 個像素” 的采樣區域,將 UV 分量作為一個整體進行采樣,然后描述 UV 分量組相對于 Y 分量的采樣率,

 

img

 

寬 A 個像素、高 2 個像素的區域

 

上面的解釋可能比較籠統,要理解 YUV A:B:C 的采樣邏輯,我們可以將其先進行拆解,整理為清晰可參考的 “規則”,再結合 “規則” 和實際案例進行分析,對于采樣格式 YUV A:B:C 相關 “規則” 的一種理解如下:

 

  • 對于一個寬度為 A 個像素、高度為 2 個像素的采樣區域(兩行四列)

     

  • 第一行需要采樣 A 個亮度分量 Y,B 個色度分量組 UV

     

  • 第二行需要采樣 A 個亮度分量 Y,C 個色度分量組 UV

     

  • 如果 C 為0,則表示第二行不再重新采樣 UV 分量,而是復用第一行的 UV 采樣

 

接下來,我們針對主流的 YUV 采樣格式,依據上述規則作具體決議,來幫助大家理解,

 

首先,我們來看看 YUV 4:4:4 采樣格式,參照上述“規則”,決議如下:

 

  • 對于一個寬度為 4 個像素、高度為 2 個像素的采樣區域

     

  • 第一行需要采樣 4 個亮度分量 Y,4 組色度分量 UV

     

  • 第二行需要采樣 4 個亮度分量 Y,4 組色度分量 UV

 

除了文字決議外,我們還可以結合圖例來觀察,如果用空心圓圈表示 Y 分量,實心圓(藍色)表示 UV 分量,則 YUV 4:4:4 采樣邏輯可以表示為下圖(圖例顏色不代表實際采樣顏色):

 

img

YUV 4:4:4

 

參考上面的圖文說明,我們發現,在 YUV 4:4:4 采樣格式下 ,每采樣一個 Y 分量、就要相應地采樣一組 UV 分量,顯然,此時 UV 分量組相對于 Y 分量在寬度方向(水平)、高度方向(豎直)上均為等采樣,不存在降采樣的情況,也即 Y:UV = 1:1,這意味著,在 YUV 4:4:4 采樣下,每個元素都包含獨立、完整的亮度分量和色度分量,

 

YUV 4:4:4 采樣相對還比較簡單,大家肯定都能理解,我們再來看看 YUV 4:2:2,

 

參照“規則”,我們將 YUV 4:2:2 采樣決議如下:

 

  • 對于一個寬度為 4 個像素、高度為 2 個像素的采樣區域

     

  • 第一行需要采樣 4 個亮度分量 Y,2 組色度分量 UV

     

  • 第二行需要采樣 4 個亮度分量 Y,2 組色度分量 UV

 

其對應的圖例如下:

 

img

 

YUV 4:2:2

 

參考圖例,YUV 4:2:2 采樣中,UV 分量組相對于 Y 分量在寬度方向有降采樣,水平每兩個 Y 分量將共用一個 UV 分量組,也即 Y : UV = 2 : 1,高度方向上未進行降采樣,第二行使用與第一行相同的采樣邏輯,重新采樣兩組獨立的 UV 分量,顯然,由于寬度方向有降采樣,YUV 4:2:2 對 UV 分量的采樣比 YUV 4:4:4 更少,但基于 YUV 的特性,雖然少采樣了部分 UV 分量,也不會太影響畫面的色彩,這就在色彩保真的前提下,實作了采集資料的壓縮,

 

以上,我們利用 “規則”,對 YUV 4:4:4 和 YUV 4:2:2 兩種采樣格式進行了決議,參考決議的結論,你可能會有一個疑問:目前討論的兩種采樣格式,似乎并沒有推翻 Y:U:V = A:B:C 的 “猜測” ?我們是否誤解了它?

 

當然不是,我們還一個采樣格式沒有決議,那就是 YUV 4:2:0,

 

如果按 Y:U:V = A:B:C 的邏輯,YUV 4:2:0 即表示 “ 僅對 Y、U 分量按 4:2 的比例采樣,不采集 V 分量 ”,這是一個錯誤的結論,YUV 4:2:0 采樣中仍然包含 YUV 三種分量,UV 分量并未脫離彼此,究竟該怎么理解 YUV 4:2:0 ,問題越是蹊蹺,我們越是要冷靜,不妨繼續參照“規則”,對 YUV 4:2:0 進行拆解:

 

  • 對于一個寬度為 4 個像素、高度為 2 個像素的采樣區域

     

  • 第一行需要采樣 4 個亮度分量 Y,2 組色度分量 UV

     

  • 第二行需要采樣 4 個亮度分量 Y,0 組色度分量 UV

     

  • 第二行需要復用第一行采樣的色度分量組 UV

 

先從文字說明上理解,YUV 4:2:0 的采樣邏輯相對于 YUV 4:2:2 的不同在于,它不僅在寬度方向上做了降采樣,在高度方向上也做了“手腳”,采樣區域的第二行,將不再采集獨立的 UV 分量組,而是復用第一行的采樣結果,

現在,我們再來看看圖例:

 

img

 

YUV 4:2:0

 

從圖例上看,YUV 4:2:0 在寬度方向、高度方向綜合起來,每 4 個 Y 分量(2 X 2 的采樣區域)將共用一個 UV 分量,

 

現在,你肯定對 YUV 4:2:0 采樣有了更清晰的認識,也明白了為什么 “ Y:U:V = A:B:C ” 是一個錯誤的“猜測”,同時,參考對 YUV 4:2:2 的分析,我們還可以推斷,由于 YUV 4:2:0 進一步降低了對 UV 分量的采樣,其采樣資料量相對于 YUV 4:2:2 更少,資料得到進一步壓縮,

 

除了以上三種主流的采樣格式,YUV 采樣格式還有諸如 YUV 4:1:1 等形式,我們就不做展開了,大家只要理解了 “A:B:C” 的規則邏輯,就能舉一反三、融匯貫通,雖然 YUV 采樣格式眾多,但其模型的共性可總結為:每個像素都會采樣亮度分量 Y,但N個像素可能會共用一組色度分量 UV,后者的差異也帶來了采樣資料量的差異,

 

關于 YUV 的采樣格式我們就先了解到這里,確定采樣格式對于正確處理 YUV 影像是至關重要的,如果采樣格式判定錯誤,會讀取到例外的影像,

 

如下,為基于 YUV444 采樣格式讀取 YUV420 格式圖片的一種例外效果:

 

img

左一:原圖,YUV420;左二:基于 YUV444 讀取YUV420

 

了解采樣格式后,就需要考慮如何進行存盤,YUV 的存盤格式也有好幾類,并且一種采樣格式還可以選擇不同的存盤格式,不同采樣格式搭配不同的存盤格式,得到了不同的 YUV 型別,這些知識綜合起來還是有一定理解和記憶難度的,大家跟著我的思路繼續往下學習,

 

2、YUV的存盤格式

 

在闡述 RGB 色彩空間的存盤格式時,我們重點關注了各個分量存盤時的 “排列方式”,依據排列的順序不同得到了 RGB 和 BGR 兩種存盤格式,在學習 YUV 的存盤時,我們也可以借鑒這個思路,

 

比較特殊的是,我們現在要引入陣列,來表示 YUV 的一種存盤結構**:平面(Plane),我們使用一個陣串列示一個存盤 “平面” ,N個不同的陣列即為 N 個平面,基于平面的概念,再按 YUV 存盤時的各分量的排列順序不同、使用的平面數量不同,我們可以將 YUV 存盤格式分為三大類:打包模式(Packed)、平面模式(Planar)和 半平面模式(Semi-Planar),**

 

我們先了解下各個模式的規則概述:

 

  • 打包模式(Packed):使用一個平面進行存盤,在平面1上,將每個像素的 Y、U、V 分量打包后連續、交錯存盤;

     

  • 平面模式(Planar):使用三個平面進行存盤,在平面1上,先連續存盤所有像素點的 Y 分量;然后在平面2上,存盤所有像素點的 U 分量;最后在平面3上,存盤所有像素點的 V 分量( U 和 V 的順序可以交換);

     

  • 半平面模式(Semi-Planar):使用兩個平面進行存盤,在平面1上,先連續存盤所有像素點的 Y 分量;然后在平面2上,連續、交錯存盤所有像素點的 U、V分量( U 和 V 的順序可以交換),

 

以上規則的描述,還是比較清晰的,我們下面結合具體的采樣格式,看看不同采樣格式、在不同存盤格式下的具體表現,為便于理解,我們仍然基于 “寬度為 4 個像素、高度為 2 個像素” 的采樣區域作講述,

 

2.1 YUV 4:4:4 的存盤格式

 

YUV 4:4:4 采樣格式比較簡單,相應的,其對應的存盤格式也比較好理解,YUV 4:4:4 使用打包模式(Packed)進行存盤時,4x2 像素采樣區域的存盤圖示如下:

 

img

 

打包模式僅使用一個平面即可,我們可以將這個存盤平面視為一個 12x2 的陣列,

 

YUV 4:4:4 如果使用平面模式(Planar)進行存盤,如下圖:

 

img

 

可以看到,從打包模式變為平面模式,存盤平面增加了兩個,YUV 各分量分別存盤在不同的平面,每個平面均為一個 4x2 的陣列,在 YUV 4:4:4 采樣、平面模式存盤下,如果按先 Y、再 U 、最后 V 的順序存盤,我們稱這種 YUV 型別為 I444,如果調整存盤順序為先 Y、再 V 、最后 U,得到 YUV 型別為 YV24 ,

 

最后,我們再來看看 YUV 4:4:4 使用半平面模式(Semi-Planar)存盤的效果:

 

img

 

半平面模式下,存盤平面為兩個,分別存盤 Y 分量和 UV 分量,其中存盤 Y 分量的平面為 4 x 2 的陣列,存盤 UV 分量的平面為 8 x 2 的陣列,YUV 4:4:4 采樣、半平面模式存盤下,如果第二個平面按 U、V 的順序存盤,對應的 YUV 型別為 NV24,若使用 V、U 的順序存盤,則為 NV42,

 

以上,即為 YUV 4:4:4 采樣在不同存盤格式的表現,以及各種采樣格式、存盤格式搭配得到的不同 YUV 型別,接下來,按照相同的思路,我們看看 YUV 4:2:2、YUV 4:2:0 的表現,

 

2.2 YUV 4:2:2 的存盤格式

 

YUV 4:2:2 下各個分量的采樣邏輯已經討論過,結合上文,可簡要概括為 “ Y分量全采集,寬度方向每兩個 Y 分量共用一組 UV 分量,高度方向每行獨立采集 UV 分量 ”,如果你對此不是很理解,可以回到 2.1 節再復習一下,

 

YUV 4:2:2 使用打包模式(Packed)存盤,效果如下圖(淺藍色填充的每組 UV 分量,屬于左右兩個 Y 分量共用的采樣):

 

img

 

YUV 4:2:2 打包模式存盤下,唯一平面為 8x2 的陣列,每個 Packed 內部的順序為 Y U V Y,并且遵循兩個 Y 共用一組 UV 的特征,其得到的 YUV 格式為 YUVY(和 Packed 內順序一致),類似的,按照 Packed 內各分量順序不同,還可以得到 YUV 型別 VYUY 和 UYVY,

 

YUV 4:2:2 使用平面模式(Planar)存盤,效果如下:

 

img

 

YUV 4:2:2 平面模式存盤下,三個平面分別為 4x2、2x2、2x2 的陣列,若后兩個平面先存 U 后存 V ,則得到 YUV 型別 I422,若先存 V 后存 U ,則得到 YUV 型別 YV16,

 

YUV 4:2:2 使用半平面模式(Semi-Planar)存盤,效果如下:

 

img

 

YUV 4:2:2 半平面模式存盤下,兩個平面均為 4x2 的陣列,第二個平面內,若按 U、V 順序交錯存盤,則得到 YUV 型別 NV16,若按 V、U 順序交錯存盤,則得到 YUV 型別 NV61,

 

2.3 YUV 4:2:0 的存盤格式

 

以上,YUV 4:4:4 和 YUV 4:2:2 的主要存盤格式已介紹完畢,最后我們再來看看最常用的采樣格式 YUV 4:2:0 的存盤,YUV 4:2:0 主要使用平面模式(Planar)和 半平面模式(Semi-Planar),

 

結合上文,YUV 4:2:0 采樣可簡要概括為 “ Y 分量全采集,寬度方向和高度方向每四個 Y 分量共用一組 UV 分量,即第二行復用第一行的 UV 采樣”,如果你對此不是很理解,可以再回到 2.1 復習一下,

 

YUV 4:2:0 使用平面模式(Planar)存盤:

 

img

 

YUV 4:2:0 平面模式存盤下,三個平面分別為 4x2、2x1、2x1 的陣列,若后兩個平面先存 U 后存 V ,則得到 YUV 型別 I420,若先存 V 后存 U ,則得到 YUV 型別 YV12,

 

YUV 4:2:0 使用半平面模式(Semi-Planar)存盤:

 

img

 

YUV 4:2:0 半平面模式存盤下,兩個平面分別為 4x2、4x1 的陣列,第二個平面若按 U、V 順序交錯存盤,則得到 YUV 型別 NV12,若按 V、U 順序交錯存盤,則得到 YUV 型別 NV21,

 

以上,即為 YUV 主流采樣格式在不同存盤模式下的表現,以及各種組合搭配得到的不同 YUV 型別,值得一提的是,在諸多 YUV 型別中,NV21 是 Android 系統相機使用的型別,而 NV12 被 iOS、MAC 系統相機使用(前面提到,iOS 和 MAC 也會使用 BGRA),大家今后會經常遇到它們,可以優先熟悉熟悉,

 

與 RGB 一樣,我們只有確認了 YUV 影像的存盤格式,才能對其進行正確地處理,使用錯誤的格式會導致顏色例外,

 

如下,原圖為使用平面模式存盤、先存 U 平面、再存 Y 平面的 YUV420 影像(I420),如果按 YV12 格式讀取(平面模式存盤、先存 V 平面、再存 U 平面)將得到圖2,

 

img

 

左一:原圖,I420;左二:基于 YV12 讀取 I420

 

為方便查閱,我們再將上面提及的,不同采樣格式、存盤模式、UV 存盤順序以及 YUV 型別的匹配關系,通過表格整理一下:

 

img

 

總結

 

不得不說,相較于 RGB,YUV 的采樣格式和存盤格式還是比較復雜的,組合得到的 YUV 型別也是眼花繚亂,你此時或許已云里霧里,這么多格式和型別,該如何去記憶呢?

 

答案是:無需死記硬背某種具體格式、型別的細節,當我們需要用到的時候,再查閱資料即可,我們需要重點掌握的,是對 “采樣格式”、“存盤格式” 概念規則的理解,在理解概念規則的基礎上,對于任何種 YUV 型別,我們都可以按 “確認采樣格式 → 確認存盤格式 → 確認 UV 存盤順序” 的思路進行分析,如前面所說,做到融會貫通方可舉一反三,

 

最后,我們通過一個思維導圖,梳理一下本篇文章的知識脈絡:

 

img

img

 

 

本期思考題

請參照 YUV 采樣格式的“規則”,說明 YUV 4:1:1 的采樣邏輯?

 

(??下期揭秘)

 

上期思考題 揭秘 ??

 

問:

RGB顏色空間也能表示黑白色和彩色,為什么還需要YUV來解決黑白電視和彩色電視之間的兼容互通問題呢?

 

答:

在黑白電視向彩色電視的過渡期,兩種型別的電視系統需要共存互通,RGB 色彩空間可以滿足彩色電視的顯示需求,也完全能勝任黑白畫面的顯示任務,但是如果統一使用RGB色彩空間,會存在如下問題:

 

1、RGB 即使只表示黑白,也需要存盤三個分量,只不過各分量的值均是0或1,而黑白電視作為舊系統,只能處理一個亮度分量,無法向前兼容RGB;

 

2、RGB 必須使用三個通道,會極大增加傳輸帶寬的壓力,

 

而 YUV 很好地解決了上述問題:

 

1、黑白電視可以僅接收 Y 信號、忽略 U、V 信號,向后兼容;

 

2、YUV 可以與 RGB 無損轉換,向前兼容;

 

3、YUV 可以對 UV 分量進行降采樣,降低資料量同時色彩保真,節省帶寬,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/517781.html

標籤:其他

上一篇:K8S 拉取阿里云鏡像

下一篇:一鍵上手時下最火AI作畫工具

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more