3C科技 娛樂遊戲 美食旅遊 時尚美妝 親子育兒 生活休閒 金融理財 健康運動 寰宇綜合

Zi 字媒體

2017-07-25T20:27:27+00:00
加入好友
fanfuhan OpenCV 教學008 ~ opencv-008-圖像通道的分離與合併 [過濾特定顏色干擾訊號] 資料來源: https://fanfuhan.github.io/ https://fanfuhan.github.io/2019/03/24/opencv-008/ GITHUB:https://github.com/jash-git/fanfuhan_ML_OpenCV C++ #include #include using namespace std; using namespace cv; /* * 图像通道分离与合并 */ int main() { Mat src = imread("../images/baboon.jpg"); if (src.empty()) { cout << "could not load image.." << endl; } imshow("input", src); vector mv; // mv用于存储图像分离后各通道像素 Mat dst1, dst2, dst3; // 令蓝色通道为0 split(src, mv); mv[0] = Scalar(0); merge(mv, dst1); imshow("blue == 0", dst1); // 令绿色通道为0 split(src, mv); mv[1] = Scalar(0); merge(mv, dst2); imshow("green == 0", dst2); // 令红色通道为0 split(src, mv); mv[2] = Scalar(0); merge(mv, dst3); imshow("red == 0", dst3); waitKey(0); return 0; } Python import cv2 as cv src = cv.imread("../images/baboon.jpg") cv.namedWindow("input", cv.WINDOW_AUTOSIZE) cv.imshow("input", src) # 蓝色通道为零 mv = cv.split(src) mv[0][:, :] = 0 dst1 = cv.merge(mv) cv.imshow("output1", dst1) # 绿色通道为零 mv = cv.split(src) mv[1][:, :] = 0 dst2 = cv.merge(mv) cv.imshow("output2", dst2) # 红色通道为零 mv = cv.split(src) mv[2][:, :] = 0 dst3 = cv.merge(mv) cv.imshow("output3", dst3) cv.waitKey(0) cv.destroyAllWindows()

本文由jashliaoeuwordpress提供 原文連結

寫了 5860316篇文章,獲得 23313次喜歡
精彩推薦