#ifndef __HGIMGPROC_H__ #define __HGIMGPROC_H__ #include "../base/HGDef.h" #include "../base/HGBaseErr.h" #include "HGImgProcErr.h" #include "../base/HGImage.h" /* 最近邻插值 */ #define HGIMGPROC_INTERPOTYPE_NN 1L /* 双线性插值 */ #define HGIMGPROC_INTERPOTYPE_LINEAR 2L /* 纠偏参数 */ typedef struct { /* 填充 */ HGBool fillBlank; HGBool convex; HGBool colorBlank; /* 其他参数 */ HGBool useParam; HGDouble threshold; HGInt noise; HGInt indent; }HGImgDeskewParam; /* 图像缩放 * 参数: * 1) image: in, 源图像句柄 * 2) destImage: in, 目标图像句柄 * 3) interpolation: in, 插值方式, 参见HGIMGPROC_INTERPOTYPE_* * 说明: * 1) 操作的只是图像的ROI区域 * 2) 源图像和目标图像的type必须一样 * 3) 自动处理origon不一致的情况 * 4) image和destImage不能是同一个句柄 */ HGEXPORT HGResult HGAPI HGImgProc_ResizeImage(HGImage image, HGImage destImage, HGUInt interp); /* * 图像色彩调整 * 1) image: in, 源图像句柄 * 2) destImage: in, 目标图像句柄 * 3) brightness: in, 亮度增加值, -255至255之间 * 4) contrast: in, 对比度增加值, -127至127之间 * 5) gamma: 伽马增加值, 0.1至5.0之间 * 说明: * 1) 操作的只是图像的ROI区域, ROI区域的大小必须一致 * 2) 源图像和目标图像的type必须一样 * 3) 自动处理origon不一致的情况 * 4) image和destImage可以是同一个句柄 */ HGEXPORT HGResult HGAPI HGImgProc_ImageAdjustColors(HGImage image, HGImage destImage, HGInt brightness, HGInt contrast, HGFloat gamma); /* * 图像纠偏 * 1) image: in, 图像句柄 * 2) autoCrop: in, 是否自动裁剪, 为HGTRUE则忽略destWidth和destHeight * 3) deskew: in, 是否纠偏 * 4) param: in, 纠偏参数, 为NULL时使用默认参数 * 5) destWidth: in, 目标图像宽度 * 6) destHeight: in, 目标图像高度 * 7) destType: in, 目标图像类型 * 8) destOrigin: in, 目标图像数据排列方式 * 9) destImage: out, 输出的目标图像句柄 * * 说明: * 1) 操作的只是image的ROI区域 * 2) 目前只支持image的类型为HGBASE_IMGTYPE_GRAY和HGBASE_IMGTYPE_RGB */ HGEXPORT HGResult HGAPI HGImgProc_ImageDeskew(HGImage image, HGBool autoCrop, HGBool deskew, const HGImgDeskewParam* param, HGUInt destWidth, HGUInt destHeight, HGUInt destType, HGUInt destOrigin, HGImage* destImage); #endif /* __HGIMGPROC_H__ */