opencv圖像的本質

目的

OpenCV是一個跨平臺的庫,使用它我們可以開發實時的計算機視覺應用程序。 它主要集中在圖像處理,視頻采集和分析,包括人臉檢測和物體檢測等功能。
數字圖像在計算機中是以矩陣形式存儲的,矩陣中的每一個元素都描述一定的圖像信息,如亮度、顏色等等。
數字圖像處理就是通過一系列操作從矩陣數據中提取更深層次信息的過程。

分析

以下通過一個例子,展示一幅最簡單的圖像,從而更形象的感覺數字圖像。

//顯示最簡單的圖片:
void showSimpleImage()
{//CV_8UC3就是8位無符號整數,3通道,RGB的顏色模式cv::Mat image(10, 10, CV_8UC3);//遍歷圖像的每個像素for (int x = 0; x < image.rows; ++x){for (int y = 0; y < image.cols; ++y){// 獲取像素的指針cv::Vec3b& pixel = image.at<cv::Vec3b>(x, y);// 為BGR通道分別賦值pixel[0] = 255; // 藍色通道 (B)pixel[1] = 0; // 綠色通道 (G)pixel[2] = 0;   // 紅色通道 (R)}}//最左上角的點為 紅色image.at<cv::Vec3b>(0, 0)[0] = 0;image.at<cv::Vec3b>(0, 0)[1] = 0;image.at<cv::Vec3b>(0, 0)[2] = 255;printf("image.type=%d\n", image.type());// 顯示圖像cv::imshow("imageOrigin", image);cv::imwrite("imageOrigin.bmp", image);
}

運行情況:
在這里插入圖片描述

看不太清楚,整體是藍色,但在左上角是紅色
看保存后圖片,就是imageOrigin.bmp:
放大之后,是這樣的:
在這里插入圖片描述

可以看到左上角的紅色方框,那就是我們設置的紅色的像素,可以看得出,像素是一個正方形。

結論

其實上圖的在內存的存儲應該是這樣的:
在這里插入圖片描述

就是一個二維數組,因為數據是三維的,所以用一行的三個數據表示一個元素。
一個元素就是一個像素,這一個元素的三個數據,就描述了這個像素的情況。
這也揭開了像素的神秘面紗。
數字圖像的本質就是二維數組。
具體代碼:
https://download.csdn.net/download/maokexu123/88862864

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

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

相關文章

VSCode React JavaScript Snippets 插件的安裝與使用指南

VSCode React JavaScript Snippets 插件的安裝與使用指南 在開發 React 項目時&#xff0c;提高效率是每個開發者都追求的目標之一。VSCode React JavaScript Snippets 插件就是為了提升 React 開發效率而設計的&#xff0c;它為常用的 React 代碼片段提供了快捷鍵&#xff0c;…

NXP實戰筆記(六):S32K3xx基于RTD-SDK在S32DS上配置PWM發波

目錄 1、概述 2、SDK配置 2.1、Port配置 2.2、Emios_Mcl_Ip 2.3、Emios_Pwm 2.4、代碼示例 1、概述 針對S32K3xx芯片&#xff0c;產生PWM的硬件支持單元僅有兩個&#xff0c;分別是eMiosx與Flexio. 生成PWM的順序&#xff0c;按照單片機所用資源進行初始化執行如下 初始化…

去年面試的運維開發面試題二

VPN有哪些協議&#xff0c;不同協議之間有何區別&#xff1f; 2.內部組網通常使用哪些類型的網段&#xff0c;兩個不同網段如何通信&#xff1f; 3.Linux中絕對路徑&#xff0c;相對路徑的區別 4. Linux如何添加磁盤&#xff0c;擴容系統文件&#xff1f; 5. Linux如何查看進程…

原型模式(Prototype Pattern) C++

上一節&#xff1a;建造者模式&#xff08;Builder Pattern&#xff09;C 文章目錄 0.理論1.原型模式的核心組成&#xff1a;2.實現方法3.什么時候使用 1.實踐步驟 1: 定義怪物原型步驟 2: 實現具體怪物原型步驟 3: 使用原型創建怪物 0.理論 原型模式&#xff08;Prototype P…

7-liunx服務器規范

目錄 概況liunx日志liunx系統日志syslog函數openlog 可以改變syslog默認輸出方式 &#xff0c;進一步結構化 用戶信息進程間的關系會話ps命令查看進程關系 系統資源限制改變工作目錄和根目錄服務器程序后臺話 概況 liunx服務器上有很多細節需要注意 &#xff0c;這些細節很重要…

服務網格Service Mesh和Istio

文章目錄 服務網格&#xff08;Service Mesh&#xff09;市場上三種服務網格解決方案服務網格的特征流量管理安全性可觀察性 Istio簡介Istio提供了什么功能服務 &#xff1f;Istio 核心特性流量管理安全可觀察性 平臺支持 服務網格&#xff08;Service Mesh&#xff09; 服務網…

Eureka注冊中心(黑馬學習筆記)

Eureka注冊中心 假如我們的服務提供者user-service部署了多個實例&#xff0c;如圖&#xff1a; 大家思考幾個問題&#xff1a; order-service在發起遠程調用的時候&#xff0c;該如何得知user-service實例的ip地址和端口&#xff1f; 有多個user-service實例地址&#xff0c…

六、行列式基本知識

目錄 1、行列式的特性 2、行列式的計算方法: 2.1 通過行列式的定義去計算:對角法則。 2. 2 利用行列式的性質將行列式轉化為上三角行列式: ①行列式的性質 : 性質一: 性質二: 性質三: 性質四:行列式之間的加法

TreeData 數據查找

TreeData 數據查找 最近做需求的時候遇到了這樣的一個需求&#xff0c;Tree組件數據支持查找&#xff0c;而且TreeData的數據層級是無限級的 開始想的事借助UI組件庫&#xff08;Ant-design-vue&#xff09;中的Tree組件的相關方法直接實現,看了下api 發現沒法實現&#xff0c;…

超級實用的python代碼片段匯總和詳細解析(16個)

目錄 1. 生成隨機文本 2. 計算文本文件中的字數 3. 替換文件文件中的字串 4. 多文件名的批量替換 5. 從網站提取數據 6. 批量下載圖片 7.批量刪除空文件夾 8.Excel表格讀寫 9.合并Excel表格工作簿 10.數據庫SQL查詢 11. 系統進程查殺 12.圖像尺寸調整和裁剪 13.圖…

redis實現消息隊列redis發布訂閱redis監聽key

文章目錄 Redis消息隊列實現異步秒殺1. jvm阻塞隊列問題2. 什么是消息隊列3. Redis實現消息隊列1. 基于List結構模擬消息隊列操作優缺點 2. 基于PubSub發布訂閱的消息隊列操作優缺點spring 結合redis的pubsub使用示例1. 引入依賴2. 配置文件3. RedisConfig4. CustomizeMessageL…

大語言模型的開山之作—探秘GPT系列:GPT-1-GPT2-GPT-3的進化之路

模型模型參數創新點評價GPT1預訓練微調&#xff0c; 創新點在于Task-specific input transformations。GPT215億參數預訓練PromptPredict&#xff0c; 創新點在于Zero-shotZero-shot新穎度拉滿&#xff0c;但模型性能拉胯GPT31750億參數預訓練PromptPredict&#xff0c; 創新點…

pclpy 可視化點云(多窗口可視化、單窗口多點云可視化)

pclpy 可視化點云&#xff08;多窗口可視化、單窗口多點云可視化&#xff09; 一、算法原理二、代碼三、結果1.多窗口可視化結果2.單窗口多點云可視化 四、相關數據五、問題與解決方案1.問題2.解決 一、算法原理 原理看一下代碼寫的很仔細的。。目前在同一個窗口最多建立2個窗…

ESP8266智能家居(3)——單片機數據發送到mqtt服務器

1.主要思想 前期已學習如何用ESP8266連接WIFI&#xff0c;并發送數據到服務器。現在只需要在單片機與nodeMCU之間建立起串口通信&#xff0c;這樣單片機就可以將傳感器測到的數據&#xff1a;光照&#xff0c;溫度&#xff0c;濕度等等傳遞給8266了&#xff0c;然后8266再對數據…

Java Web3J :使用web3j調用自己的智能合約,返回一個內部有數組的對象結構時出現NPE問題

之前有寫過一篇文章Java Web3J :使用web3j調用自己的智能合約的方法(教程),當時只是簡單的方法調用,也不涉及到什么復雜的數據類型,入參是long類型,出參是String類型。 目錄 問題描述報錯信息嘗試解決控制變量法查看源碼網上查閱解決最后問題描述 遇到這個問題是因為有…

【AI應用】SoraWebui——在線文生視頻工具

SoraWebui 是一個開源項目&#xff0c;允許用戶使用 OpenAI 的 Sora 模型使用文本在線生成視頻&#xff0c;從而簡化視頻創建&#xff0c;并具有輕松的一鍵網站部署功能 在 Vercel 上部署 1. 克隆項目 git clone gitgithub.com:SoraWebui/SoraWebui.git 2. 安裝依賴 cd Sor…

本科畢業設計(論文)開題報告:基于人工智能的短視頻獲客平臺的設計與實現

目錄 1.選題概述1.題目背景2.目的及意義3.技術現狀 2.題目內容1.任務概述2.系統設計1.數據采集模塊&#xff1a;2.數據處理與分析模塊&#xff1a;3.客戶識別模塊&#xff1a;4.推廣策略模塊&#xff1a; 3.功能模塊1.數據采集模塊&#xff1a;2.數據處理與分析模塊&#xff1a…

【Java EE初階二十】http的簡單理解(一)

1. 初識http HTTP 最新的版本應該是 HTTP/3.0&#xff0c;目前大規模使用的版本 HTTP/1.1&#xff1b; 下面來簡單說明一下使用 HTTP 協議的場景: 1、瀏覽器打開網站 (基本上) 2、手機 APP 訪問對應的服務器 (大概率) 前面的 TCP與UDP 和http不同&#xff0c;HTTP 的報文格式&a…

React基礎-webpack+creact-react-app創建項目

學習視頻&#xff1a;學習視頻 2節&#xff1a;webpack工程化創建項目 2.1.webpack工程化工具&#xff1a;vite/rollup/turbopak; 實現組件的合并、壓縮、打包等&#xff1b; 代碼編譯、兼容、校驗等&#xff1b; 2.2.React工程化/組件開發 我們可以基于webpack自己去搭建…

sql-labs25-28a

一、環境 網上都有不過多闡述 二、sql-labs第25關 它說你的OR和and屬于它,那就是過濾了OR和and 注入嘗試 不用or和and進行爆破注入,很明顯是有注入點的 ?id-1 union select 1,2,3-- 查看數據庫 ok&#xff0c;此道題算是解了但是如果我們用了and了呢 ?id-1 and updatex…