人類的視覺系統是三原色的,視網膜上有三種型別的視錐細胞,它們將顏色資訊傳遞給大腦。這意味著對於彩色影象,每個畫素都要對應三個數值。在攝影和數字成像技術中,常用的主顏色通道是紅色、綠色和藍色,因此每3個8位數值組成矩陣的乙個元素。
為了說明如何直接訪問畫素值,我們建立乙個簡單的函式,用它在影象中加入椒鹽雜訊(salt-and-pepper noise)。顧名思義,椒鹽噪是乙個專門的雜訊型別,它隨機選擇一些畫素,把它們的顏色替換成白色或黑色。如果通訊時出錯,部分畫素的值在傳輸時丟失,就會發生這種雜訊。這裡我們只是隨機地選擇一些畫素,把它們設定為白色。
#include #include #include #include "opencv2/imgproc/imgproc.hpp"
#include #include "opencv2/calib3d/calib3d.hpp"
#include "opencv2/features2d/features2d.hpp"
using namespace std;
void salt(cv::mat image, int n)
else if (image.type()==cv_8uc3)
//以上為隨機變成白色}}
opencv學習筆記 二 操作畫素
第二章 操作畫素 2.1引言 灰度影象畫素由8位無符號數來表示,0表示黑色,255表示白色。彩色影象 rgb 畫素由三個8位的無符號數來表示,儲存方式為三元數 b,g,r 2.2訪問畫素值 mat類有若干成員和成員函式來獲取影象的屬性 成員cols和rows表示 寬和高 列和行 成員函式 at 畫素...
學習Opencv 2 4 9(二) 操作畫素
來自 本質上說一張影象就是由數值組成的矩陣。opencv 2.x由 cv mat 這個資料結構來表示一張影象。矩陣的每乙個元素代表了乙個畫素。對於彩色影象而言矩陣的元素是乙個三元數。對影象有了這個新的認識,下面可以試著借助opencv處理影象了。先來看一下今天要處理的影象 今天的主題是訪問畫素,首先...
opencv畫素操作
1 bit depth 位元數 代表8bite,16bites,32bites,64bites 舉個例子吧 比如說,如 如果你現在建立了乙個儲存 灰度的mat物件,這個影象的大小為寬100,高100,那麼,現在這張 灰度中有10000個畫素點,它每乙個畫素點在記憶體空間所佔的空間大小是8bite,8...