(100, 100)에 접근
소스 코드
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main() {
// 이미지 입력
Mat src = imread("Lenna.png");
// 픽셀의 색깔 데이터 가져오기 (at)
Vec3b color_1 = src.at<Vec3b>(Point(100, 100));
for (int i = 0; i < 3; i++) {
cout << int(color_1.val[i]) << " ";
}
cout << endl;
// 픽셀의 색깔 데이터 가져오기 (ptr)
uchar* color_2 = src.ptr<uchar>(100);
for (int i = 0; i < 3; i++) {
cout << int(color_2[100 * 3 + i]) << " ";
}
cout << endl;
// 픽셀의 색깔 데이터 가져오기 (data)
uchar* color_3 = src.data;
for (int i = 0; i < 3; i++) {
cout << int(color_3[100 * 3 * src.cols + 100 * 3 + i]) << " ";
}
cout << endl;
return 0;
}
소스 코드
#include <opencv2/opencv.hpp>
using namespace cv;
int main() {
// 이미지 입력
Mat src = imread("Lenna.png");
// 픽셀의 색깔 데이터 가져오기
Vec3b scalar = src.at<Vec3b>(Point(100, 100));
// 픽셀의 색깔 데이터 변경하기
for (int y = 95; y < 105; y++) {
for (int x = 95; x < 105; x++) {
src.at<Vec3b>(Point(y, x)) = Vec3b(255, 0, 0);
}
}
// 이미지 출력
imshow("Lenna", src);
// 키 입력을 받을 때까지 유지
waitKey();
return 0;
}
실행
