CN110766771B - 一种基于fpga的字符描边方法 - Google Patents
一种基于fpga的字符描边方法 Download PDFInfo
- Publication number
- CN110766771B CN110766771B CN201910994001.5A CN201910994001A CN110766771B CN 110766771 B CN110766771 B CN 110766771B CN 201910994001 A CN201910994001 A CN 201910994001A CN 110766771 B CN110766771 B CN 110766771B
- Authority
- CN
- China
- Prior art keywords
- tracing
- image
- edge
- value
- character
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20192—Edge enhancement; Edge preservation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Character Discrimination (AREA)
Abstract
本发明公开了一种基于FPGA的字符描边方法,该方法首先设定描边次数、宽度和描边参考图像,然后将原字符图像二值化并转存到多个描边处理单元中,之后每个描边处理单元进行边缘检测并描边处理,在所有描边处理单元处理完成后替换描边像素值、生成描边图像,最后通过图像叠加生成描边字符。本发明方法支持使用描边参考图像和二次描边处理,兼顾描边效果和描边处理的灵活性,且无需高性能处理器,更有利于设备成本控制,具有较强的实用价值。
Description
技术领域
本发明属于图像处理领域,涉及一种基于FPGA的字符描边方法。
背景技术
字符描边即在字符边缘绘制一定宽度的线条,从而增强字符显示效果。由于字符图像描边处理计算量较大,为保证嵌入式设备描边处理的实时性,目前多采用图像处理库和描边字符库两种实现方式,其中图像处理库方式采用高性能处理器运行嵌入式系统,并在系统中使用嵌入式图像处理库进行实时描边处理,而描边字符库方式则是将描边处理后的字符库预先存储在系统中,在使用时直接调用。以上两种方式虽然满足了特定的应用需求,但存在以下问题:图像处理库方式在一定程度上限制了嵌入式系统的选用,且对处理器选型提出了较高的要求,不利于嵌入式设备的体积和成本控制,而描边字符库方式则缺乏描边处理的灵活性。
发明内容
(一)发明目的
本发明的目的是:针对现有嵌入式设备字符描边实现方式存在的诸多问题,提供一种基于FPGA的字符描边方法。
(二)技术方案
为了解决上述技术问题,本发明提供一种基于FPGA的字符描边方法,其特点是包括以下步骤:
步骤1,设定描边次数、宽度和描边参考图像;即预先设定字符描边的次数、宽度和参考图像,其中描边次数可选值为1或2,2次描边用于实现增强描边边缘等效果,宽度值以像素个数为单位,描边参考图像可以为纯色或复杂图像。如果是2次描边,则需要分别指定每次描边的宽度和参考图像。
步骤2,字符图像二值化并转存;即在不覆盖原彩色字符图像的前提下,将彩色字符图像转换为黑白二值化图像,其中二值化图像的背景像素值设为0,字符像素值设为k。之后将生成的二值化字符图像转存到多个描边处理单元中,并为各描边处理单元划分描边范围,描边范围以行为单位,每个描边处理单元可在对应的描边范围内进行描边处理。
步骤3,边缘检测并描边;每个描边处理单元依据指定的描边范围进行边缘检测,并以检测到的边缘像素为圆心,以步骤1中指定的第1次描边宽度值为半径检索圆形内的像素值,将像素值0改为像素值m,进行第1次描边处理。如果步骤1中指定的描边次数为2,则在第1次描边完成后重新进行边缘检测,并以检测到的边缘像素为圆心,以步骤1中指定的第2次描边宽度值为半径检索圆形内的像素值,将像素值0改为像素值n,进行第2次描边处理。在进行边缘检测时,每个描边处理单元可根据需要跨描边范围进行检测,但在进行描边处理时,只能在指定的描边范围内进行像素值修改。在进行第1次边缘检测时,检测像素值k和像素值0的边缘,边缘像素值为k;在进行第2次边缘检测时,检测像素值m和像素值0的边缘,边缘像素值为m。
步骤4,替换描边像素值、生成描边图像;在所有描边处理单元处理完成后,按指定的描边处理范围对每个描边处理单元生成的描边图像进行检索,并依据检索值将一个空白RGB图像填充为彩色描边图像,具体填充方法为:如果步骤1中指定的描边参考图像为纯色图像,则在检索到值为m或n的像素点时依据参考图像指定的纯色值对应修改空白图像相应像素点的RGB值,如果步骤1中指定的描边参考图像为复杂图像,则在检索到值为m或n的像素点时将空白图像相应像素点的RGB值改为参考图像相应像素点的RGB值。
步骤5,生成描边字符;将步骤4中生成的彩色描边图像叠加到原彩色字符图像中,生成描边字符。
(三)有益效果
上述技术方案所提供的基于FPGA的字符描边方法,该方法支持使用描边参考图像和二次描边处理,兼顾描边效果和描边处理的灵活性,且无需高性能处理器,更有利于设备成本控制,具有较强的实用价值。
附图说明
图1为本发明一种基于FPGA的字符描边方法的流程图。
具体实施方式
为使本发明的目的、内容和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
参照图1,本发明一种基于FPGA的字符描边方法的具体实施步骤如下:
该实施例的字符图像大小为100行*80列。
步骤1,设定描边次数、宽度和描边参考图像;即预先设定字符描边的次数、宽度和参考图像,在此设定描边次数2,第1次描边宽度为3个像素,第2次描边宽度为1个像素,指定第1次描边参考图像为复杂非纯色图像,第2次描边参考图像为纯色图像。
步骤2,字符图像二值化并转存;即在不覆盖原彩色字符图像的前提下,将彩色字符图像转换为黑白二值化图像,其中二值化图像的背景像素值设为0x0,字符像素值设为0xFF。之后将生成的二值化字符图像转存到5个描边处理单元中,其中第1个描边处理单元处理第1~20行,第2个描边处理单元处理第21~40行,依此类推,第5个描边处理单元处理第81~100行。
步骤3,边缘检测并描边;每个描边处理单元依据指定的描边范围进行边缘检测,并以检测到的边缘像素为圆心,以步骤1中指定的第1次描边3像素宽度值为半径检索圆形内的像素值,将像素值0x0改为像素值0x1,进行第1次描边处理。在第1次描边完成后重新进行边缘检测,并以检测到的边缘像素为圆心,以步骤1中指定的第2次描边1像素宽度值为半径检索圆形内的像素值,将像素值0x0改为像素值0x2,进行第2次描边处理。在进行边缘检测时,每个描边处理单元可根据需要跨描边范围进行检测,但在进行描边处理时,只能在指定的描边范围内进行像素值修改。在进行第1次边缘检测时,检测像素值0xFF和像素值0x0的边缘,边缘像素值为0xFF;在进行第2次边缘检测时,检测像素值0x1和像素值0x0的边缘,边缘像素值为0x1。
步骤4,替换描边像素值、生成描边图像;在所有描边处理单元处理完成后,按指定的描边处理范围对每个描边处理单元生成的描边图像进行检索,并依据检索值将一个空白RGB图像填充为彩色描边图像,具体填充方法为:在检索到值为0x1的像素点时将空白图像相应像素点的RGB值改为参考的非纯色图像相应像素点的RGB值,在检索到值为0x2的像素点时依据参考图像指定的纯色图像像素值对应修改空白图像相应像素点的RGB值
步骤5,生成描边字符;将步骤4中生成的彩色描边图像叠加到原彩色字符图像中,生成描边字符。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (1)
1.一种基于FPGA的字符描边方法,其特征在于,包括以下步骤:
步骤1,设定描边次数、宽度和描边参考图像;
步骤2,字符图像二值化并转存;
步骤3,边缘检测并描边;
步骤4,替换描边像素值、生成描边图像;
步骤5,生成描边字符;
所述步骤1中,预先设定字符描边的次数、宽度和参考图像,描边次数选值为1或2,宽度值以像素个数为单位,描边参考图像为纯色或复杂图像;
所述步骤1中,描边次数选值为2次时,需要分别指定每次描边的宽度和参考图像;
所述步骤2中,字符图像二值化并转存的过程为:在不覆盖原彩色字符图像的前提下,将彩色字符图像转换为黑白二值化图像,其中二值化图像的背景像素值设为0,字符像素值设为k;之后将生成的二值化字符图像转存到多个描边处理单元中,并为各描边处理单元划分描边范围,描边范围以行为单位,每个描边处理单元在对应的描边范围内进行描边处理;
所述步骤3中,边缘检测并描边的过程为:每个描边处理单元依据指定的描边范围进行边缘检测,并以检测到的边缘像素为圆心,以步骤1中指定的第1次描边宽度值为半径检索圆形内的像素值,将像素值0改为像素值m,进行第1次描边处理;
所述步骤3中,如果预先设定的描边次数为2,则在第1次描边完成后重新进行边缘检测,并以检测到的边缘像素为圆心,以步骤1中指定的第2次描边宽度值为半径检索圆形内的像素值,将像素值0改为像素值n,进行第2次描边处理;
所述步骤3中,在进行边缘检测时,每个描边处理单元根据需要跨描边范围进行检测,在进行描边处理时,在指定的描边范围内进行像素值修改;
所述步骤3中,如果预先设定的描边次数为2,则在进行第1次边缘检测时,检测像素值k和像素值0的边缘,边缘像素值为k;在进行第2次边缘检测时,检测像素值m和像素值0的边缘,边缘像素值为m;
所述步骤4中,在所有描边处理单元处理完成后,按指定的描边处理范围对每个描边处理单元生成的描边图像进行检索,并依据检索值将一个空白RGB图像填充为彩色描边图像,填充方法为:如果步骤1中指定的描边参考图像为纯色图像,则在检索到值为m或n的像素点时依据参考图像指定的纯色值对应修改空白图像相应像素点的RGB值,如果步骤1中指定的描边参考图像为复杂图像,则在检索到值为m或n的像素点时将空白图像相应像素点的RGB值改为参考图像相应像素点的RGB值;
所述步骤5中,将步骤4中生成的彩色描边图像叠加到原彩色字符图像中,生成描边字符。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910994001.5A CN110766771B (zh) | 2019-10-18 | 2019-10-18 | 一种基于fpga的字符描边方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910994001.5A CN110766771B (zh) | 2019-10-18 | 2019-10-18 | 一种基于fpga的字符描边方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110766771A CN110766771A (zh) | 2020-02-07 |
CN110766771B true CN110766771B (zh) | 2023-07-28 |
Family
ID=69332594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910994001.5A Active CN110766771B (zh) | 2019-10-18 | 2019-10-18 | 一种基于fpga的字符描边方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110766771B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013021709A1 (de) * | 2013-03-15 | 2014-09-18 | Nvidia Corporation | Schablonieren-dann-abdecken- pfadbilderzeugung mit gemeinsamen kanten |
CN105096356A (zh) * | 2014-05-13 | 2015-11-25 | 北大方正集团有限公司 | 手写字符加粗方法和手写字符加粗装置 |
CN105374015A (zh) * | 2015-10-27 | 2016-03-02 | 湖北工业大学 | 基于局部对比度和笔画宽度估计的低质量文档图像二值化方法 |
CN106530379A (zh) * | 2015-09-11 | 2017-03-22 | 三星电子株式会社 | 用于执行路径描边的方法和设备 |
CN106709973A (zh) * | 2016-12-16 | 2017-05-24 | 无锡中微亿芯有限公司 | 一种基于mcu和fpga芯片的电子印章生成显示方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1983412A4 (en) * | 2006-01-31 | 2011-07-20 | Kenji Yoshida | IMAGE PROCESSING METHOD |
-
2019
- 2019-10-18 CN CN201910994001.5A patent/CN110766771B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013021709A1 (de) * | 2013-03-15 | 2014-09-18 | Nvidia Corporation | Schablonieren-dann-abdecken- pfadbilderzeugung mit gemeinsamen kanten |
CN105096356A (zh) * | 2014-05-13 | 2015-11-25 | 北大方正集团有限公司 | 手写字符加粗方法和手写字符加粗装置 |
CN106530379A (zh) * | 2015-09-11 | 2017-03-22 | 三星电子株式会社 | 用于执行路径描边的方法和设备 |
CN105374015A (zh) * | 2015-10-27 | 2016-03-02 | 湖北工业大学 | 基于局部对比度和笔画宽度估计的低质量文档图像二值化方法 |
CN106709973A (zh) * | 2016-12-16 | 2017-05-24 | 无锡中微亿芯有限公司 | 一种基于mcu和fpga芯片的电子印章生成显示方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110766771A (zh) | 2020-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111179324B (zh) | 基于颜色和深度信息融合的物体六自由度位姿估计方法 | |
CN103927016B (zh) | 一种基于双目视觉的实时三维双手手势识别方法及其系统 | |
CN108780507A (zh) | 用于提供图像分类器的系统和方法 | |
EP3916629A1 (en) | Method, apparatus and device for identifying illegal building, and storage medium | |
CN105069042A (zh) | 基于内容的无人机侦察图像数据检索方法 | |
CN105217324A (zh) | 一种新型的拆垛方法和系统 | |
CN105139042A (zh) | 图像识别方法及系统 | |
CN103198486A (zh) | 一种基于各向异性扩散的深度图像增强方法 | |
CN116051797B (zh) | 一种基于三维引擎批量修改模型穿插的方法、装置及设备 | |
CN105389541A (zh) | 指纹图像的识别方法及装置 | |
US20220375186A1 (en) | Method and apparatus for generating bounding box, device and storage medium | |
CN106469138B (zh) | 词云的生成方法及装置 | |
CN111696134B (zh) | 一种目标检测方法、装置以及电子设备 | |
CN114529909A (zh) | 样本数据集的生成方法、装置及电子设备 | |
CN104036272A (zh) | 一种文本检测方法及电子设备 | |
CN110889854A (zh) | 一种基于多尺度深度学习的草图部件分割方法、系统、装置及存储介质 | |
CN110766771B (zh) | 一种基于fpga的字符描边方法 | |
CN111429437B (zh) | 面向目标检测的图像无参考清晰度质量检测方法 | |
CN103955713A (zh) | 一种图标识别方法和装置 | |
CN112101113B (zh) | 一种轻量化的无人机图像小目标检测方法 | |
CN104050674A (zh) | 一种显著性区域检测方法及装置 | |
CN113052923A (zh) | 色调映射方法、装置、电子设备和存储介质 | |
CN104602096A (zh) | 一种视频字幕区的检测方法和装置 | |
CN104050673A (zh) | 一种基于K-means图像分割的深度图提取方法 | |
CN110096973A (zh) | 一种基于orb算法和深度级可分离卷积网络的交警手势识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |