[AI]/openCV
medianBlur in C++
givemebro
2020. 6. 22. 17:00
반응형
void filter_median() {
//이미지 저장
Mat src = imread("C:/Users/givemebro/Desktop/flo.png", IMREAD_GRAYSCALE);
if (src.empty()) {
cerr << "Image load failed!" << endl;
return;
}
// src 영상에서 10%에 해당하는 픽셀 값을 0 또는 255로 설정
int num = (int)(src.total()*0.1);
for (int i = 0; i < num; i++) {
int x = rand() % src.cols;
int y = rand() % src.rows;
src.at<uchar>(y, x) = (i % 2) * 255;
}
// 가우시안필터 수행(표준 편차 : 1)
Mat dst1;
GaussianBlur(src, dst1, Size(), 1);
// 미디언필터 수행(크기 : 3)
Mat dst2;
medianBlur(src, dst2, 3);
imshow("src", src);
imshow("dst1", dst1);
imshow("dst2", dst2);
waitKey();
destroyAllWindows();
}
int main() {
filter_median();
return 0;
}
반응형