- Java 數字影像處理
- 數字影像處理 - 首頁
- 數字影像處理 - 簡介
- 數字影像處理 - Java BufferedImage 類
- 數字影像處理 - 圖片下載與上傳
- 數字影像處理 - 影像畫素
- 數字影像處理 - 灰度轉換
- 數字影像處理 - 增強影像對比度
- 數字影像處理 - 增強影像亮度
- 數字影像處理 - 增強影像銳度
- 數字影像處理 - 影像壓縮技術
- 數字影像處理 - 新增影像邊框
- 數字影像處理 - 影像金字塔
- 數字影像處理 - 基本閾值處理
- 數字影像處理 - 影像形狀轉換
- 數字影像處理 - 高斯濾波器
- 數字影像處理 - 均值濾波器
- 數字影像處理 - 腐蝕與膨脹
- 數字影像處理 - 水印
- 數字影像處理 - 卷積理解
- 數字影像處理 - Prewitt運算元
- 數字影像處理 - Sobel運算元
- 數字影像處理 - Kirsch運算元
- 數字影像處理 - Robinson運算元
- 數字影像處理 - Laplacian運算元
- 數字影像處理 - 加權平均濾波器
- 數字影像處理 - 建立縮放效果
- 數字影像處理 - 開源庫
- 數字影像處理 - OpenCV 簡介
- 數字影像處理 - OpenCV 灰度轉換
- 數字影像處理 - 顏色空間轉換
- 數字影像處理有用資源
- 數字影像處理 - 快速指南
- 數字影像處理 - 有用資源
- 數字影像處理 - 討論
Java 數字影像處理 - 增強影像亮度
本章中,我們將透過將影像的每個畫素乘以一個 alpha 值並加上另一個 beta 值來增強影像的亮度。
我們使用OpenCV 函式convertTo來自動執行上述操作。它可以在Mat包中找到。其語法如下:
int alpha = 2; int beta = 50; sourceImage.convertTo(destination, rtype , alpha, beta);
引數說明如下:
| 序號 | 引數及說明 |
|---|---|
| 1 |
destination 目標影像。 |
| 2 |
rtype 所需的輸出矩陣型別,更確切地說是深度,因為通道數與輸入相同。如果 rtype 為負,則輸出矩陣將與輸入具有相同的型別。 |
| 3 |
alpha 可選比例因子。 |
| 4 |
beta 新增到縮放值的可選增量。 |
除了 convertTo 方法外,Mat 類還提供了其他方法。簡要說明如下:
| 序號 | 方法及說明 |
|---|---|
| 1 |
adjustROI(int dtop, int dbottom, int dleft, int dright) 調整子矩陣在父矩陣中的大小和位置。 |
| 2 |
copyTo(Mat m) 將矩陣複製到另一個矩陣。 |
| 3 |
diag() 從矩陣中提取對角線,或建立一個對角矩陣。 |
| 4 |
dot(Mat m) 計算兩個向量的點積。 |
| 5 |
reshape(int cn) 更改二維矩陣的形狀和/或通道數,無需複製資料。 |
| 6 |
submat(Range rowRange, Range colRange) 提取矩形子矩陣。 |
示例
以下示例演示瞭如何使用 Mat 類增強影像亮度:
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.highgui.Highgui;
public class Main {
static int width;
static int height;
static double alpha = 2;
static double beta = 50;
public static void main( String[] args ) {
try{
System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
Mat source = Highgui.imread("digital_image_processing.jpg",Highgui.CV_LOAD_IMAGE_COLOR);
Mat destination = new Mat(source.rows(),source.cols(),
source.type());
source.convertTo(destination, -1, alpha, beta);
Highgui.imwrite("brightWithAlpha2Beta50.jpg", destination);
} catch (Exception e) {
System.out.println("error:" + e.getMessage());
}
}
}
輸出
執行給定程式碼後,將看到以下輸出:
原始影像
增強亮度影像 (Alpha=1 & Beta=50)
增強亮度影像 (Alpha=2 & Beta=50)
廣告