Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Cách giảm độ sáng (Brightness) ảnh trong OpenCV C++


Giới thiệu

Giảm độ sáng = trừ giá trị scalar từ mỗi pixel. Tương tự tăng sáng nhưng dùng phép trừ.

Chương trình giảm độ sáng

#include <iostream>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
using namespace std;

int main() {
    Mat original = imread("bright.jpg");
    Mat dimmer;
    namedWindow("Original"); namedWindow("Dimmer");
    dimmer = original - Scalar(80, 80, 80); // Trừ 80 từ mỗi kênh B,G,R
    imshow("Original", original);
    imshow("Dimmer", dimmer);
    waitKey(0);
    return 0;
}

Kết quả

Ảnh gốc và ảnh giảm độ sáng (tối hơn, chi tiết vùng sáng bị mất).