一个图像处理

大多数图像处理函数作用于位图在内存中,这意味着改变成为永久保存图像时在一个文件中。一些低级函数作用于一个缓冲管理(例如,当您处理数据加载)。

改变数据格式

你可以改变颜色分辨率(位/像素)图像的使用一些高级和低级功能。这些函数的列表,请参考做的颜色扩展或减少

窗户总是使用RGB颜色空间模型,当加载或保存一个文件,LEADTOOLS转换或从RGB图像数据,作为必要的。然而,LEADTOOLS提供其他颜色空间模型的功能。您可以使用高级L_ColorSeparateBitmapL_ColorMergeBitmap函数来创建和使用彩色空间模型合并颜色分离,包括RGB、CMYK, c my, HSV和HLS。您还可以使用低级L_ConvertColorSpace在缓冲区函数将原始数据从一个到另一个色彩空间模型,包括RGB、YUV, CMYK, c my, YIQ, HSV和HLS。

如果源数据在YUV彩色空间而不是BGR / RGB格式,您可以使用L_SetBitmapYUVData函数转换为YUV数据灰度/ BGR BITMAPHANDLE之前设置。使用L_GetBitmapYUVData函数将一个位图的灰度或BGR为YUV数据并将其存储在输出缓冲区。

L_AutobinarizeBitmap自动将彩色图像转换成二进制(黑色和白色)图像,与几个预处理选项。这些包括消除位图的背景,(同时保持关键特性,比如文本);执行自动color-leveling,执行color-leveling指定的阈值。

改变数据类型(签名/无符号)

图像数据可以改变从签署无符号,反之亦然。签名图像数据可能包含一些负面的价值观。将数据从签署转换为无符号,反之亦然,是通过将图像数据/强度值通过一个特定的值。的能力将图像数据之间来回签署和无符号通常是有用的在医学或分析应用程序。

改变图像数据从签订到无符号,这通常是做过应用图像处理和分析功能,有以下选项:

L_ConvertBitmapUnsignedToSigned变化的图像数据基于位图的内部方面。

L_ShiftMinimumToZero为用户提供图像数据转移的价值。可以使用此信息后,图像处理后,返回图像签名数据。

L_ClearNegativePixels集所有负面的像素为0,因此创建一个无符号的形象。

签署后图像转换为无符号图像图像处理或无符号图像分析功能可以执行。(大多数图像处理函数只在无符号数据工作。)当完成图像处理或分析,转换成无符号数据回签名数据。

改变图像数据从无符号到签署,这通常是应用图像处理或分析功能完成后,有以下选项:

L_ConvertBitmapSignedToUnsigned变化的图像数据基于位图的内部方面。

L_ShiftZeroToNegative给用户的指定数量的能力将图像数据,并规定的最小值和最大值输出的功能。

做几何转换

几何变换包括调整、修剪、旋转、剪切、翻转或扭转一个位图。一些几何变换函数的设计主要用于文档成像。例如,L_DeskewBitmap(文档和医疗成像工具包),L_DeskewBitmapExt(文档和医疗成像工具包)让你自动伸直扫描文件。L_DeskewBitmap有特殊的标志,能够理顺银行检查图像。有关更多信息,请参考抗扭斜

LEADTOOLS还提供了L_TransformFile函数执行无损的翻转、旋转和逆转。然而,只有某些文件格式支持。这个函数提供了更好的结果比加载一个图像,转换使用L_RotateBitmap,L_FlipBitmapL_ReverseBitmap然后保存它。它使用TRANSFORMFILECALLBACK函数处理文件。TRANSFORMFILECALLBACK函数使用LEADMARKERCALLBACK函数编写任何更新标记内的文件。有关更多信息,请参考L_TransformFile,TRANSFORMFILECALLBACKLEADMARKERCALLBACK

L_DisplaceMapBitmap函数取代位图像素水平和垂直位移贴图的值图像。

L_PerspectiveBitmap函数给出了一个位图三维深度,如果它存在于一个平面,扭曲成不同的形状。的L_ManualPerspectiveDeskew函数修正的观点视角。

L_Keystone函数把一个多边形映射到一个矩形(逆透视变换),并可以用来正确捕获图像的角度从便携式设备在一个角度。

L_UnWarp功能消除了畸变图像的圆柱形物体,好像删除一个标签从缸和压扁。

使用L_BezierPath函数匹配输出曲线与曲线形状的两个角落之前调用L_UnWarp。一定要联系L_FreeBezierPath当完成为了自由与结构相关联的所有记忆。

L_AlignImages函数将两个图像(pRefBitmap pTempBitmap图像)基于输入点的位置。图像相结合,创建ppOutBitmap形象。

这一组的功能列表,请参考光栅图像功能:做几何转换。内存分配信息位图变大时,请参考调整注意事项

闪电、黑暗和过滤图像

许多图像处理功能让你改变像素值的位图位图(或地区)使用各种算法和过滤器。你可能做这个改善的外观形象,分析图像中细节,或应用艺术效果。下列主题提供细节:

改变亮度和对比度

去除噪声

检测和增强边缘和线条

应用艺术效果

修正颜色

添加另一个位图图像

L_CombineBitmap函数允许您添加全部或部分的另一个位图到目标位图。您可以通过标志来控制是否新的像素只是取代旧的或结合旧的方式指定。您还可以定义地区或两个位图,如果你做,只影响区域的交集的函数。L_CombineBitmap还允许用户把不同比特每像素的位图并指定使用哪个颜色的飞机时结合位图。区域信息,请参考定义和使用一个位图

源和目标位图可能会被扭曲的全部或部分结合源位图到目标位图的一部分。在这种方式,结合图像使用L_CombineBitmapWarp

L_UnderlayBitmap函数也结合了图像,但它有一个更特定的目的。它结合了两个位图,这样一个似乎是一个潜在的其他结构。

LEADTOOLS电影化图像提供了几个函数。的L_PicturizeBitmap函数替换图像结合图像创建的新形象出现在一个特定的目录中。L_PicturizeBitmapList替换一个图像,并且创建了一个新的形象结合在一个位图图像列表。的L_PicturizeBitmapSingle本函数图像使用各种版本的一个形象。

两位图也可以混合通过结合图像与一个不透明度值。的L_AlphaBlendBitmap函数结合了两个位图和一个固定的不透明度值来创建一个新的混合图像。的L_FeatherAlphaBlendBitmap函数结合两个位图与羽毛通过使用一个变量不透明度,取决于一个褪色的面具与指定地区的褪色的面具。一个褪色的面具可以创建位图使用L_CreateFadedMask函数。

边界和帧可以添加位图使用L_AddBorderL_AddFrame功能。

L_BumpMapBitmap函数允许您将一个位图与肿块图像创建一个三维结构模式。

L_CanvasBitmap函数适用于一个图像作为另一个图像的叠加。

其他一些功能让你get和put像素数据。例如,您可以用颜色填充位图,你可以获取和放置单独的像素值。有关函数的列表,请参考获取和设置像素值

把位图关联设备开启了许多的可能性。的L_CreateLeadDC函数允许您获取设备上下文。然后您可以使用Windows GDI函数在绘制线条的时候,文本或图像的位图。您还可以使用LEADTOOLS特效功能添加三维图形或文本,或将图像以有趣的方式。详情,请参考实现特殊效果

L_TextureAlphaBlendBitmap将图像数据从pBitmapMask pBitmapUnderlay衬底效应。结果被用作褪色面具,将被用来结合pBitmapSrc和pBitmapDst变量不透明度。结果再结合使用一个常数与pBitmapDst透明度(使用nOpacity)。的L_BricksTextureBitmap函数创建一个砖结构,使图像看起来像画在一堵砖墙。

L_DigitalSubtractBitmap函数不结合图像,但减去的生活(目的地)位图面具(源)位图显示两位图之间的区别。

对比图片

两个位图的位图或部分可以比较使用L_CorrelationBItmap函数。这个函数将全部或部分的一个位图的所有领域相同的维度在另一个位图,发现这些地区相匹配的测量相关性。的L_CorrelationListBitmap函数比较了图像在hCorList pBitmap所有地区的相同的维度,发现那些匹配的部分根据相关的措施。

从一系列中提取位图

L_SliceBitmap函数是用来从射线扫描提取单个片电影。

检测图像特征

L_BlankPageDetectorBitmap函数确定是否一个空白页扫描图像(空的),也给结果的准确性百分比。这个功能有助于减少磁盘存储扫描图像。

L_InvertedPageBitmap功能检测图像(页面)是否反向文本(白色和黑色背景)。如果是倒倒所以文本是黑色,背景是白色的。使用这个函数来提高OCR和清理函数的性能。

L_LambdaConnectedness函数执行图像分割使用一个特殊的区域增长算法称为λ连通性。

L_LevelsetBitmapRgn函数执行半自动分割(使用Levelset算法)找到最佳拟合轮廓,封装了对象。

L_OtsuThreshold函数执行图像分割和色彩还原灰度图像上使用首先进行聚类。大津阈值通常是用作binarize图像的方法。

使用L_MICRDetection函数自动检测磁性墨水字符识别(显微镜)在文档图像区域。

使用L_MRZDetection函数自动检测机器可读护照区(MRZ)在文档图像。

L_BlurDetection函数决定一个图像是模糊的。的L_GlareDetection函数自动检测图像的眩光区。

L_SignalToNoiseRatio函数计算信号噪声比(信噪比)的10 * log10实际价值。该值指示了相邻像素在图像的同质性。

L_KMeansBitmapSegmentation函数是分析数据的算法。集群中的每个观察被放置的意思是最近的。

L_GWireGetMinPath使用G-Wire函数在图像物体检测算法。

自动分区(检测图像特征)

L_AutoZoneBitmap函数检测不同的区域(文本、图形和表格)自动在一个图像,并返回每个区域的位置(矩形)和数据等(文本行和表的细胞)在一个分配的内存。它可以用于OCR或任何应用程序,需要单独的图片,自动混合光栅内表和文本内容(MRC)图像。

如果用户定义的AUTOZONECALLBACK函数和一个指针传递给这个函数L_AutoZoneBitmap每个区发现,回调函数将会收到。这允许用户根据需要处理每个图像。

包含发现分配的内存区域时不再需要,应该是通过调用释放L_FreeZoneData函数。

魔杖和快速魔杖操作

魔杖

通常,魔杖操作创建一个Windows地区或领先地区(L_RGN)。虽然快魔杖操作以同样的方式工作,在相同的条件下,它创建一个OBJECTINFO结构包含两个元素:一个矩形和一个二维数组。

矩形对应于该地区的边界框。二维数组对应像素属于该地区通过引用包括元素1与0时不包括在内。

数量、方向和顺序的二维数组的元素对应像素边界矩形内。因此,该地区的具体形状和位置可以知道。

快速开始使用魔杖的操作,您必须首先初始化一个魔杖迅速处理。这是通过调用来完成的L_StartFastMagicWandEngine函数。一旦初始化处理,通过调用执行快速魔杖操作L_FastMagicWand函数。这个函数使用时需要在一个图像选择许多地区,尤其是大图像,因为它执行得更快。当OBJECTINFO结构获得的L_FastMagicWand不再需要,删除它通过调用吗L_DeleteObjectInfo函数。

L_ObjectCounter计数的对象在一个二进制图像。白底黑色对象计数。如果背景是黑色的,对象是白色,使用L_InvertBitmap然后使用L_ObjectCounter

当快魔杖处理不再需要,自由调用的处理L_EndFastMagicWandEngine。在这一点上这处理变得无效。

LEADTOOLS光栅成像C API的帮助
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。