|
|
#pragma once
|
|
|
#include "stdafx.h"
|
|
|
|
|
|
// 作者:王家星 2015/01/13
|
|
|
|
|
|
// 情报数据通用结构
|
|
|
#include "QBStru.h"
|
|
|
|
|
|
#include "OpencvImgShell.h"
|
|
|
|
|
|
|
|
|
|
|
|
// 简称:Intensity Contrast Defination = ICD
|
|
|
|
|
|
//功能:图像亮度+对比度+清晰度控制
|
|
|
//输入: 1. qbData 通用情报数据结构体
|
|
|
// 2. Idegree 控制亮度, 有效范围【0,20】,值越小越暗,越大越亮
|
|
|
// 3. Cdegree 控制对比度, 有效范围【0,20】,值越小对比度越弱,越大对比度越强
|
|
|
// 4. Ddegree 控制清晰度, 有效范围【0,20】,值越小越模糊,越大越清晰
|
|
|
// 5. bSrcFirst 默认时,优先处理srcImg, srcImg-->dstImg
|
|
|
// 否则,优先处理dstImg,dstImg——>dstImg
|
|
|
|
|
|
//输出: 1. qbData 含变化后图像的情报数据结构体
|
|
|
// 2. 返回值:处理成功返回TRUE,失败返回FALSE
|
|
|
//说明: 首先判断图像数据有效性标识位,无效时直接返回,不做任何处理;
|
|
|
extern BOOL QBStru_ICD_Control(QBStru *qbData, int Idegree = 10, int Cdegree = 10, int Ddegree = 10, BOOL bSrcFirst = TRUE);
|
|
|
|
|
|
|
|
|
// ImgStru结构下的图像亮度对比度清晰度控制
|
|
|
|
|
|
//功能:图像亮度对比度清晰度控制(函数重载)
|
|
|
//输入: 1. src 输入图像结构体
|
|
|
// 2. Idegree 控制亮度, 有效范围【0,20】,值越小越暗,越大越亮
|
|
|
// 3. Cdegree 控制对比度, 有效范围【0,20】,值越小对比度越弱,越大对比度越强
|
|
|
// 4. Ddegree 控制清晰度, 有效范围【0,20】,值越小越模糊,越大越清晰
|
|
|
|
|
|
//输出: 1. dst 输出图像结构体
|
|
|
// 2. 返回值:处理成功返回TRUE,失败返回FALSE
|
|
|
extern BOOL ImgStru_ICD_Control(ImgStru* src, ImgStru* dst, int Idegree = 10, int Cdegree = 10, int Ddegree = 10);
|
|
|
|
|
|
|
|
|
// OpenCV结构下的图像亮度对比度清晰度控制
|
|
|
|
|
|
//功能:图像亮度对比度清晰度控制
|
|
|
//输入: 1. src 输入图像
|
|
|
// 2. Idegree 控制亮度, 有效范围【0,20】,值越小越暗,越大越亮
|
|
|
// 3. Cdegree 控制对比度, 有效范围【0,20】,值越小对比度越弱,越大对比度越强
|
|
|
// 4. Ddegree 控制清晰度, 有效范围【0,20】,值越小越模糊,越大越清晰
|
|
|
|
|
|
//输出: 1. dst 输出图像
|
|
|
// 2. 返回值:处理成功返回TRUE,失败返回FALSE
|
|
|
extern BOOL IplImage_ICD_Control(IplImage* src, IplImage* dst, int Idegree = 10, int Cdegree = 10, int Ddegree = 10); |