要使用C++讀取圖像的灰度信息,可以使用OpenCV庫。下面是一個簡單的示例代碼,演示了如何讀取圖像的灰度信息:
#include <opencv2/opencv.hpp>
int main() {
// 讀取圖像
cv::Mat image = cv::imread("image.jpg", cv::IMREAD_GRAYSCALE);
if(image.empty()) {
std::cerr << "Error: Unable to read image file" << std::endl;
return -1;
}
// 顯示圖像大小
std::cout << "Image size: " << image.rows << "x" << image.cols << std::endl;
// 訪問圖像像素值
for(int i = 0; i < image.rows; i++) {
for(int j = 0; j < image.cols; j++) {
int pixel_value = image.at<uchar>(i, j);
std::cout << "Pixel value at (" << i << "," << j << "): " << pixel_value << std::endl;
}
}
return 0;
}
在上面的代碼中,我們首先使用cv::imread
函數讀取圖像,并使用cv::IMREAD_GRAYSCALE
標志加載灰度圖像。然后,我們顯示了圖像的大小,并使用at
函數訪問圖像的每個像素的灰度值。注意,在這個例子中,我們假設圖像是單通道的灰度圖像。
請確保安裝了OpenCV庫,并將其鏈接到您的項目中,以便成功編譯和運行上面的代碼。