OpenCV 圖形API(55)顏色空間轉換-----將圖像從 RGB 色彩空間轉換為 I420 格式函數RGB2I420()

  • 操作系統:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 編程語言:C++11

算法描述

將圖像從 RGB 色彩空間轉換為 I420 色彩空間。
該函數將輸入圖像從 RGB 色彩空間轉換為 I420。R、G 和 B 通道值的常規范圍是 0 到 255。

輸出圖像必須是 8 位無符號單通道圖像 CV_8UC1。I420 輸出圖像的寬度必須與輸入圖像的寬度相同。I420 輸出圖像的高度必須等于輸入圖像高度的 3/2。

注意
函數的文字 ID 是 “org.opencv.imgproc.colorconvert.rgb2i420”

函數原型

GMat cv::gapi::RGB2I420 	
( const GMat &  	src
) 	

參數:

  • 參數 src: 輸入圖像,8 位無符號三通道圖像 CV_8UC3。

代碼示例

#include <opencv2/gapi.hpp>
#include <opencv2/gapi/core.hpp>     // 包含核心功能
#include <opencv2/gapi/imgproc.hpp>  // 包含圖像處理功能
#include <opencv2/opencv.hpp>int main()
{// 讀取一個BGR圖像cv::Mat bgr_img = cv::imread( "/media/dingxin/data/study/OpenCV/sources/images/Lenna.png" );if ( bgr_img.empty() ){std::cerr << "Error: Image not found!" << std::endl;return -1;}// 定義G-API圖cv::GMat src;auto i420 = cv::gapi::RGB2I420( src );  // 盡管名為RGB2I420,實際上處理的是BGR輸入cv::GComputation comp( cv::GIn( src ), cv::GOut( i420 ) );// 創建輸出矩陣cv::Mat out_i420;// 應用計算圖并執行轉換,指定使用默認的CPU后端comp.apply( cv::gin( bgr_img ), cv::gout( out_i420 ), cv::compile_args( cv::gapi::kernels() ) );// 注意:I420格式不是直接可視化的格式。// 如果你需要可視化或進一步處理,你可能需要將其轉換回BGR或其他可視格式。// 這里我們僅展示原始圖像cv::imshow( "Original BGR Image", bgr_img );cv::waitKey( 0 );// 打印輸出圖像的信息std::cout << "Output I420 image size: " << out_i420.size() << std::endl;return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/80444.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/80444.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/80444.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Pycharm(十六)面向對象進階

一、繼承 概述&#xff1a; 實際開發中&#xff0c;我們發現很多類中的步分內容是相似的&#xff0c;或者相同的&#xff0c;每次寫很麻煩&#xff0c;針對這種情況&#xff0c; 我們可以把這些相似&#xff08;相同的&#xff09;部分抽取出來&#xff0c;單獨地放到1個類中&…

Codeforces Round 1020 (Div. 3)(題解ABCDEF)

A. Dr. TC 有n次翻轉&#xff0c;從1到n&#xff0c;0->1,1->0&#xff0c;每次統計1的數量&#xff0c;設cnt1是字符串1的數量&#xff0c;n次就是n*cnt1&#xff0c; 但每個1都會被翻轉一次減去一個cnt1,再統計cnt0&#xff0c;每個被翻轉一次,答案就是(n-1)*cnt1cnt0…

HTML字符實體和轉義字符串

HTML字符實體和轉義字符串用于處理特殊字符&#xff0c;確保它們在不同上下文中正確顯示或解析。以下是詳細總結&#xff1a; HTML字符實體&#xff08;Character Entities&#xff09; ?定義?&#xff1a;用于在HTML中表示保留字符或不可見字符&#xff0c;避免與HTML語法…

FreeRTOS菜鳥入門(六)·移植FreeRTOS到STM32

目錄 1. 獲取裸機工程模版 2. 下載 FreeRTOS V9.0.0 源碼 3. FreeRTOS文件夾內容簡介 3.1 FreeRTOS文件夾 3.1.1 Demo文件夾 3.1.2 License 文件夾 3.1.3 Source 文件夾 3.2 FreeRTOS-Plus 文件夾 4. 往裸機工程添加 FreeRTOS 源碼 5. 拷貝 FreeRTOSConfig…

通過 Tailwind CSS 自定義樣式 實現深色模式切換

創建vite項目或者vue-cli配置大同小異 1、當前環境 Vue.js 3.5nuxtjs/tailwindcss 6.13.1nuxt3.15.4node18 這里主要依賴是tailwindcss 因為當前項目是使用nuxt開發。 2、配置顏色模式 在assets/css下創建main.css * {padding: 0;margin: 0;box-sizing: border-box; }[dat…

PWNOS:2.0(vulnhub靶機)

文章目錄 靶機地址主機發現、端口掃描web滲透目錄探測漏洞利用權限提升 解密工具地址總結 靶機地址 https://download.vulnhub.com/pwnos/pWnOS_v2.0.7z 這里如果是windows系統直接使用vmware或者virtubox打開可以使用,如果是mac系統需再去做一個配置&#xff0c;比較麻煩 這里…

Gartner魔力象限(Gartner Magic Quadrant)

Gartner魔力象限&#xff08;Gartner Magic Quadrant&#xff09;是由全球領先的研究和咨詢公司Gartner發布的市場研究報告&#xff0c;廣泛應用于IT行業&#xff0c;尤其是在技術供應商評估中。它以圖形化的方式展示了不同技術領域中各個供應商的市場表現&#xff0c;幫助企業…

信創時代開發工具選擇指南:國產替代背景下的技術生態與實踐路徑

&#x1f9d1; 博主簡介&#xff1a;CSDN博客專家、CSDN平臺優質創作者&#xff0c;高級開發工程師&#xff0c;數學專業&#xff0c;10年以上C/C, C#, Java等多種編程語言開發經驗&#xff0c;擁有高級工程師證書&#xff1b;擅長C/C、C#等開發語言&#xff0c;熟悉Java常用開…

人口老齡化丨AI健康小屋如何實現防病于未然?

隨著全球老齡化加劇&#xff0c;“銀發浪潮” 對醫療資源、養老護理和健康管理提出了嚴峻挑戰。 由此智紳科技應運而生&#xff0c;七彩喜智慧養老系統構筑居家養老安全網。 AI 健康小屋作為銀發科技的創新載體&#xff0c;通過智能化健康監測、精準化風險預警、便捷化醫療銜…

【金倉數據庫征文】金倉數據庫:開啟未來技術腦洞,探索數據庫無限可能

我的個人主頁 我的專欄&#xff1a; 人工智能領域、java-數據結構、Javase、C語言&#xff0c;希望能幫助到大家&#xff01;&#xff01;&#xff01; 點贊&#x1f44d;收藏? 目錄 引言&#xff1a;數據庫進化的下一站 —— 未來科技的無限可能金倉數據庫簡介&#xff1a;國…

#什么是爬蟲?——從技術原理到現實應用的全面解析 VI

什么是爬蟲?——從技術原理到現實應用的全面解析 V 二十六、異構數據采集技術突破 26.1 PDF文本與表格提取 import pdfplumber import pandas as pddef extract_pdf_data(pdf_path):"""從PDF中提取文本和表格數據:param pdf_path: PDF文件路徑:return: 包含…

關于Spring Boot構建項目的相關知識

一 前端框架 1 VUE框架 1.1 簡介 Vue是一款流行的JavaScript框架&#xff0c;用于構建用戶界面和單頁面應用程序。它的設計初衷是為了簡化Web開發過程&#xff0c;使開發者能夠快速構建交互性強、響應速度快的Web應用。 1.2 優點 簡單易用&am…

PPO 強化學習機械臂 IK 訓練過程可視化利器 Tensorboard

視頻講解&#xff1a; PPO 強化學習機械臂 IK 訓練過程可視化利器 Tensorboard PPO 強化學習過程中&#xff0c;設置了verbose會顯示數據&#xff0c;但還是不夠直觀&#xff0c;這里上一個可視化利器&#xff0c;Tensorboard&#xff0c;實際上stable baselines3中已經有了這部…

UE5的 Modify Curve 藍圖節點

In Unreal Engine’s Animation Blueprints, the Modify Curve node lets you drive and alter any named Animation Curve on your character at runtime. The Apply Mode setting on that node controls how the “new” value you feed in (via the added curve‐input pin)…

【Hive入門】Hive分區與分區表完全指南:從原理到企業級實踐

引言 在大數據時代&#xff0c;高效管理海量數據成為企業面臨的核心挑戰。Hive作為Hadoop生態系統中最受歡迎的數據倉庫解決方案&#xff0c;其分區技術是優化數據查詢和管理的關鍵手段。本文將全面解析Hive分區技術的原理、實現方式及企業級最佳實踐&#xff0c;幫助您構建高性…

jdk-8u202-linux-x64.tar.gz官方下載地址

https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html 點擊下載&#xff0c;需要先注冊oracle賬號&#xff0c;很好注冊隨便寫&#xff0c;注冊完登錄就可以下載了。目前就Oracle JDK 8u201/202 是最后兩個可免費用于商業用途的公開版本

OpenCv高階(十)——光流估計

文章目錄 前言一、光流估計二、使用步驟1、導庫讀取視頻、隨機初始化顏色2、初始化光流跟蹤3、視頻幀處理循環4、光流計算與可視化5、循環控制與資源釋放完整代碼 總結 前言 在計算機視覺領域&#xff0c;光流估計是捕捉圖像序列中像素點運動信息的核心技術。它描述了圖像中每…

AIGC實戰之如何構建出更好的大模型RAG系統

一、RAG 系統核心架構解析 1. 檢索模塊深度優化 1.1 混合檢索技術實現 技術原理&#xff1a;結合稀疏檢索&#xff08;BM25&#xff09;與密集檢索&#xff08;DPR&#xff09;&#xff0c;通過動態權重分配提升檢索精度。例如&#xff0c;在醫療領域&#xff0c;BM25 負責精…

Rust 學習筆記:函數和控制流

Rust 學習筆記&#xff1a;函數和控制流 Rust 學習筆記&#xff1a;函數和控制流函數&#xff08;Function&#xff09;語句和表達式帶返回值的函數注釋控制流if 表達式使用 else if 處理多個條件在 let 語句中使用 if循環loop從循環中返回值循環標簽消除多個循環之間的歧義帶 …

c#加密證件號的中間部分,改為*號

前言 使用場景&#xff1a;在我項目中&#xff0c;我需要給前端提供接口&#xff0c;所以我要吧證件號進行加密。例如&#xff1a;411421199510225612&#xff0c;這是一個身份證號&#xff0c;18為的&#xff0c;那么我加密完成之后就會是 411421********5612&#xff0c;類似…