CN106020745A - 基于人脸识别的煎饼打印路径生成方法和装置 - Google Patents

基于人脸识别的煎饼打印路径生成方法和装置 Download PDF

Info

Publication number
CN106020745A
CN106020745A CN201610323885.8A CN201610323885A CN106020745A CN 106020745 A CN106020745 A CN 106020745A CN 201610323885 A CN201610323885 A CN 201610323885A CN 106020745 A CN106020745 A CN 106020745A
Authority
CN
China
Prior art keywords
face
path
region
dice
stroke
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.)
Granted
Application number
CN201610323885.8A
Other languages
English (en)
Other versions
CN106020745B (zh
Inventor
朱恬倩
章陆
刘鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qingruan Hesion Technology Co Ltd
Original Assignee
Beijing Qingruan Hesion Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Qingruan Hesion Technology Co Ltd filed Critical Beijing Qingruan Hesion Technology Co Ltd
Priority to CN201610323885.8A priority Critical patent/CN106020745B/zh
Publication of CN106020745A publication Critical patent/CN106020745A/zh
Application granted granted Critical
Publication of CN106020745B publication Critical patent/CN106020745B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1238Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
    • AHUMAN NECESSITIES
    • A21BAKING; EDIBLE DOUGHS
    • A21CMACHINES OR EQUIPMENT FOR MAKING OR PROCESSING DOUGHS; HANDLING BAKED ARTICLES MADE FROM DOUGH
    • A21C11/00Other machines for forming the dough into its final shape before cooking or baking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification

Abstract

本发明提供一种基于人脸识别的煎饼打印路径生成方法和装置,属于3D煎饼打印机领域,所述方法包括:步骤101:在人脸图像上定位出人脸区域,裁剪得到包括人脸区域的子图像,并在所述子图像上标记出特征点,所述特征点位于脸颊、眼睛、眉毛、鼻子和嘴巴处;步骤102:根据特征点以及子图像的颜色明暗特征对子图像进行分层处理,得到三色灰度图;步骤103:对所述三色灰度图中的每个连通区域进行处理,生成笔画路径;步骤104:合并所述笔画路径上的近似点,删除所述笔画路径上的冗余点,得到打印路径。与现有技术相比,本发明能够生成煎饼打印机能够自动打印的路径文件,在很大程度上能替代煎饼画师的工作,节约人力成本,提高工作效率。

Description

基于人脸识别的煎饼打印路径生成方法和装置
技术领域
本发明涉及3D煎饼打印机领域,特别是指一种基于人脸识别的煎饼打印路径生成方法和装置。
背景技术
近年来,随着科学的发展和进步,3D打印技术已逐步从专业领域走向大众的日常生活,包括家具、服饰、餐饮等各行各业。3D煎饼打印机作为3D打印技术在餐饮行业的典型应用,真正地将高科技与大众生活充分融合,不仅减少了人力成本,而且提高了生产质量和效率。
3D煎饼打印机可打印出人像、建筑、卡通人物等各种形状的煎饼,3D煎饼打印机能够打印的图案种类和相关打印素材的丰富性则直接影响煎饼机的推广和实用价值,而目前打印的图案和素材主要靠人工绘制,成本较高,种类有限。
发明内容
本发明要解决的技术问题是提供一种基于人脸识别的煎饼打印路径生成方法和装置,本发明能够生成煎饼打印机能够自动打印的路径文件,在很大程度上能替代煎饼画师的工作,节约人力成本,提高工作效率。
为解决上述技术问题,本发明提供技术方案如下:
一方面,提供一种基于人脸识别的煎饼打印路径生成方法,包括:
步骤101:在人脸图像上定位出人脸区域,裁剪得到包括人脸区域的子图像,并在所述子图像上标记出特征点,所述特征点位于脸颊、眼睛、眉毛、鼻子和嘴巴处;
步骤102:根据特征点以及子图像的颜色明暗特征对子图像进行分层处理,得到三色灰度图;
步骤103:对所述三色灰度图中的每个连通区域进行处理,生成笔画路径;
步骤104:合并所述笔画路径上的近似点,删除所述笔画路径上的冗余点,得到打印路径。
进一步的,所述步骤101包括:
步骤1011:使用人脸识别算法,在人脸图像上定位出人脸区域;
步骤1012:对人脸图像进行裁剪,得到400*400大小的包含所述人脸区域的子图像;
步骤1013:使用68点人脸训练模型在所述子图像上标记出脸颊、眼睛、眉毛、鼻子和嘴巴的位置。
进一步的,所述步骤102包括:
步骤1021:将所述子图像转换成灰度图像,并对所述灰度图像进行双边滤波处理;
步骤1022:对所述灰度图像上的人脸区域进行聚类操作,得到多层三色子度图;
步骤1023:对颜色最浅的三色子度图,利用聚类结果,区分出人脸区域颜色最浅的部分和背景区域,并将背景区域剔除;
步骤1024:对三色子度图进行圆形模板的开运算,去除噪声和不必要的小细节区域,得到三色子度图的实际有效区域;
步骤1025:根据人脸区域和特征点的位置以及三色子度图的实际有效区域,进一步裁剪三色子度图;
步骤1026:填充裁剪后的三色子度图中人脸区域内部的孔洞,导出最终的三色子度图。
进一步的,所述步骤103包括:
步骤1031:根据实际打印煎饼的大小以及打印机笔画的粗细,计算size,其中size为打印笔画宽度在灰度图中对应的像素个数;
步骤1032:将每层三色子度图的原始连通区域做宽度为size/2的向内等距偏移;
步骤1033:对于等距偏移后的连通区域,选择连通区域边缘上的一点作为起始点开始搜索路径,路径中的下一点为以前一点为中心,宽度为size+2的正方形与连通区域边界的交点,直至路径搜索完成。
进一步的,所述步骤104包括:
步骤1041:使用simplify-go简化方法对所述笔画路径进行简化,其中容差为0.35;
步骤1042:判断所述笔画路径上相邻的两点距离是否小于3.0,若是,使用两点的中点代替这两点,得到打印路径。
另一方面,提供一种基于人脸识别的煎饼打印路径生成装置,包括:
人脸识别模块,用于在人脸图像上定位出人脸区域,裁剪得到包括人脸区域的子图像,并在所述子图像上标记出特征点,所述特征点位于脸颊、眼睛、眉毛、鼻子和嘴巴处;
图像分层模块,用于根据特征点以及子图像的颜色明暗特征对子图像进行分层处理,得到三色灰度图;
笔画路径生成模块,用于对所述三色灰度图中的每个连通区域进行处理,生成笔画路径;
打印路径生成模块,用于合并所述笔画路径上的近似点,删除所述笔画路径上的冗余点,得到打印路径。
进一步的,所述人脸识别模块包括:
人脸识别单元,用于使用人脸识别算法,在人脸图像上定位出人脸区域;
图像裁剪单元,用于对人脸图像进行裁剪,得到400*400大小的包含所述人脸区域的子图像;
特征定位单元,用于使用68点人脸训练模型在所述子图像上标记出脸颊、眼睛、眉毛、鼻子和嘴巴的位置。
进一步的,所述图像分层模块包括:
灰度转换单元,用于将所述子图像转换成灰度图像,并对所述灰度图像进行双边滤波处理;
聚类单元,用于对所述灰度图像上的人脸区域进行聚类操作,得到多层三色子度图;
背景剔除单元,用于对颜色最浅的三色子度图,利用聚类结果,区分出人脸区域颜色最浅的部分和背景区域,并将背景区域剔除;
开运算单元,用于对三色子度图进行圆形模板的开运算,去除噪声和不必要的小细节区域,得到三色子度图的实际有效区域;
灰度图裁剪单元,用于根据人脸区域和特征点的位置以及三色子度图的实际有效区域,进一步裁剪三色子度图;
填充单元,用于填充裁剪后的三色子度图中人脸区域内部的孔洞,导出最终的三色子度图。
进一步的,所述笔画路径生成模块包括:
笔画宽度计算单元,用于根据实际打印煎饼的大小以及打印机笔画的粗细,计算size,其中size为打印笔画宽度在灰度图中对应的像素个数;
等距偏移单元,用于将每层三色子度图的原始连通区域做宽度为size/2的向内等距偏移;
路径搜索单元,用于对于等距偏移后的连通区域,选择连通区域边缘上的一点作为起始点开始搜索路径,路径中的下一点为以前一点为中心,宽度为size+2的正方形与连通区域边界的交点,直至路径搜索完成。
进一步的,所述打印路径生成模块包括:
第一路径进行简化单元,用于使用simplify-go简化方法对所述笔画路径进行简化,其中容差为0.35;
第二路径进行简化单元,用于判断所述笔画路径上相邻的两点距离是否小于3.0,若是,使用两点的中点代替这两点,得到打印路径。
本发明具有以下有益效果:
本发明对于给定浅色单一背景的人脸图像,首先利用人脸识别技术,确定被识别人脸在对应图像中实际位置,然后根据给定的尺寸大小裁剪出正面的人脸图像,并利用识别出的脸部特征以及图像的本身颜色明暗特征对图像进行分层处理,形成三色灰度图。对于灰度图中的每一层区域,利用煎饼笔画生成算法生成煎饼打印机能够自动打印的路径文件。由于在图像分层灰度化的过程中结合了人脸识别的结果,所以能在很大程度上提高最终打印出的人脸头像煎饼与原始图的相似程度。并且本发明在很大程度上能替代煎饼画师的工作,节约人力成本,提高工作效率。
附图说明
图1为本发明的基于人脸识别的煎饼打印路径生成方法流程图;
图2为本发明的基于人脸识别的煎饼打印路径生成装置示意图;
图3为本发明中分层处理后得到的图像;
图4为本发明中打印得到的煎饼图像。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
一方面,本发明提供一种基于人脸识别的煎饼打印路径生成方法,如图1所示,包括:
步骤101:在人脸图像上定位出人脸区域,裁剪得到包括人脸区域的子图像,并在所述子图像上标记出特征点,所述特征点位于脸颊、眼睛、眉毛、鼻子和嘴巴处。
本发明中,人脸图像为包含人脸且背景为单一浅色的图像,本步骤中,可以使用各种人脸识别算法,确定被识别人脸的位置,同时对原图进行裁剪变换,得到子图像,然后根据人脸训练模型标记出脸颊以及眼睛、眉毛、鼻子和嘴巴在子图像中的精确位置,为后续的图像处理和分层提供参考。
步骤102:根据特征点以及子图像的颜色明暗特征对子图像进行分层处理,如图3所示,得到三色灰度图。
本步骤中,根据煎饼机打印煎饼的颜色空间以及人工画饼的过程,需要把子图转化为三色灰度图,具体的,可以通过滤波和聚类等操作得到三色灰度图。
步骤103:对所述三色灰度图中的每个连通区域进行处理,生成笔画路径。
对三色灰度图,首先根据不同的灰度值将原图按层次分开,对于每一层图像遍历出该层的所有连通区域,对于每个连通区域生成初始的煎饼笔画路径。
步骤104:合并所述笔画路径上的近似点,删除所述笔画路径上的冗余点,得到打印路径,打印后的煎饼如图4所示。
由于从三色灰度图直接得到的笔画路径往往包含的点数较多,对于煎饼打印机而言,这会导致打印的速度降低,笔画变粗,严重影响最终的打印效果。因此需要根据煎饼打印机的打印性能,对笔画路径进行简化并生成打印机能够识别的打印路径指令。本步骤中的简化方法主要包括给定距离容差的近似点合并以及平滑处冗余点的删除。
本发明对于给定浅色单一背景的人脸图像,首先利用人脸识别技术,确定被识别人脸在对应图像中实际位置,然后根据给定的尺寸大小裁剪出正面的人脸图像,并利用识别出的脸部特征以及图像的本身颜色明暗特征对图像进行分层处理,形成三色灰度图。对于灰度图中的每一层区域,利用煎饼笔画生成算法生成煎饼打印机能够自动打印的路径文件。由于在图像分层灰度化的过程中结合了人脸识别的结果,所以能在很大程度上提高最终打印出的人脸头像煎饼与原始图的相似程度。并且本发明在很大程度上能替代煎饼画师的工作,节约人力成本,提高工作效率。
作为本发明的一种改进,步骤101可以包括:
步骤1011:使用人脸识别算法,在人脸图像上定位出人脸区域。
本步骤中,利用开源库dlib进行人脸识别,定位出人脸区域。
步骤1012:对人脸图像进行裁剪,得到400*400大小的包含人脸区域的子图像。
步骤1013:使用68点人脸训练模型在子图像上标记出脸颊、眼睛、眉毛、鼻子和嘴巴的位置。
本步骤中,使用68点人脸标定数据集shape_predictor_68_face_landmarks.dat来识别出子图像上的脸颊、眼睛、眉毛、鼻子和嘴巴的位置。
本发明能够简单方便的识别并定位出人脸区域,并且识别结果准确。
由于最终打印出来的煎饼图案的颜色深浅主要靠烤炙时间来决定,所以需要对打印的图案进行分层处理,先打印的层烤炙时间较长,最终的颜色较深,后打印的层烤炙时间相对较短,最终的颜色较浅。
以打印人脸煎饼为例,头发和眼睛一般颜色较深,为最先打印的层,而脸颊颜色较浅,一般为最后打印的部分。图像分层是指将原始图转化成只包含给定几种灰度值的灰度图像,每一种灰度值代表一层,分层的主要目的是用来区分图像各个部分的打印先后和烤炙时间。
本发明中,步骤102可以利用开源库opencv的相关功能进行滤波和聚类等基本操作,具体的:
步骤1021:将子图像转换成灰度图像,并对灰度图像进行双边滤波处理。
本步骤中,利用cv::bilateralFilter对灰度图像进行双边滤波操作,滤波的内核大小为图像的高度x0.02,相似度权值和距离权值公式中的方差均取96。
步骤1022:对灰度图像上的人脸区域进行聚类操作,得到多层三色子度图。
本步骤中,利用人脸68点标定模型中的前27个点,人脸68点标定模型中的前27个点表示了脸颊和眉毛的位置,可有效地用于估计人脸的实际位置和近似包围盒,即脸颊和眉毛的轮廓点近似表示人脸区域,在该区域内部利用cv::kmeans进行聚类操作,终止条件选择CV_TERMCRIT_EPS+CV_TERMCRIT_ITER,聚类次数设为4,最终要聚成4类,即人脸区域分成4层,终止精度设为0.001,聚类初始化方法选择KMEANS_PP_CENTERS。对聚类的结果进行从小到大的排序,根据结果对原图进行初次分层。
步骤1023:对颜色最浅的三色子度图,利用聚类结果,区分出人脸区域颜色最浅的部分和背景区域,并将背景区域剔除。
对于初次分层结果中颜色最浅的一层,根据已有的假设,往往包含了人脸颜色最浅的部分和浅色背景,而背景是人脸煎饼中需要剔除的,因此需要对该层进行再次处理。首先利用步骤1022中得到的人脸近似轮廓与该层区域进行求交操作,得到位于人脸内部的亮色区域,然后利用cv::kmeans聚类出该区域的平均颜色,作为人脸最亮层的颜色。根据该区域内各点与均值的颜色空间距离集合,计算出颜色距离的均值和标准差。然后对颜色最浅层中的每一点计算其与人脸最亮层的颜色的距离,根据该距离与距离均值的差是否大于标准差来剔除背景区域,大于标准差的认为是背景区域,需要剔除。
步骤1024:对三色子度图进行圆形模板的开运算,去除噪声和不必要的小细节区域,得到三色子度图的实际有效区域.
对于除背景外的分层图像中的每一层,利用cv::morphologyEx进行开运算操作,模版形状选择cv::MORPH_ELLIPSE,大小为(图像高度x0.00625)/2x2+1。利用已经识别出的人脸五官位置信息,去除眼睛和嘴以外部分的小区域,由于煎饼打印机的打印精度有限,无法打印出过小的区域,因此除必要的五官信息外的其余细节特征需要尽量去除,以保证良好的打印效果,根据图像的大小,小区域尺寸定义为0.05*图像高度*0.05*图像宽度。
步骤1025:根据人脸区域和特征点的位置以及三色子度图的实际有效区域,进一步裁剪三色子度图,为了使人脸图案在打印时尽量大且局中,需要尽量裁剪掉人脸以外的无关部分。。
对于步骤1024中得到的分层图像,首先计算除背景外的头像的实际区域大小,然后根据已识别的五官信息,以眉心为中心,以眉心和下颚中心距离的2.4倍作为边长,根据脸颊轮廓的左右两点和鼻尖的距离,计算新的更紧的头像包围正方形,最后根据新的包围正方形对分层图进行裁剪。
步骤1026:填充裁剪后的三色子度图中人脸区域内部的孔洞,导出最终的三色子度图。
本步骤利用cv::floodFill对人脸区域内的孔洞以颜色最浅层的灰度值进行填充,然后利用cv::imwrite导出最终的分层灰度图像。
本发明使用开源库opencv的相关功能进行滤波和聚类等基本操作,能够得到三色灰度图,方便后续生成笔画路径,并且笔画路径更加精确。
对于分层后的灰度图像,首先根据不同的灰度值将原图按层次分开,对于每一层图像利用cv::floodFill遍历出该层的所有连通区域,对于每个连通区域按如下步骤生成初始的煎饼笔画路径,由于煎饼的打印过程一般是逐区域打印的,对于煎饼机来说希望每个区域中的笔画数尽量少,以保证打印过程的流畅性,同时笔画覆盖整个区域,因此基于连通区域生成比划路径,包括:
步骤1031:根据实际打印煎饼的大小以及打印机笔画的粗细,计算size,其中size为打印笔画宽度在灰度图中对应的像素个数。
本步骤中,计算图像中笔画对应的像素宽度size和连接路径最小代价的阈值threshold,其中size=图像的尺寸x实际的笔画宽度/实际煎饼的尺寸,threshold=size*size*1.8。
步骤1032:将每层三色子度图的原始连通区域做宽度为size/2的向内等距偏移。
由于煎饼机打印的实际路径笔画都具有固定的宽度,因此在模拟笔画填涂给定图层区域时,需要作向内的等距偏移,否则实际打印时会出现尺寸不对或溢料。
对原始的连通区域做宽度为size/2的保连通的向内等距偏移操作。与传统的图像等距偏移不同,根据每个像素点的8邻域判定边缘点后,还需要检测移除该点后是否会导致原区域的连通性被破坏,如果会破坏连通性,则该点需要保留,不能在等距偏移的过程中被删除。
步骤1033:对于等距偏移后的每个连通区域,选择连通区域边缘上的一点作为起始点开始搜索路径,路径中的下一点为以前一点为中心,宽度为size+2的正方形与连通区域边界的交点,直至路径搜索完成,本步骤包括:
(1).对于等距偏移后的区域图像,选择区域最左的边缘点作为起始点开始搜索路径,路径中的下一点为以前一点为中心,宽度为size+2的正方形与区域边界的交点,若有多个交点,则选择路径方向变化最小的点,并将其余交点加入到种子点队列中,作为新路径搜索的候选点;为获取交点,实施的过程中不仅需要记录每步搜索后原区域图像的变化,即未被填充的区域图,还需要在每条子路径搜索完前对上一步的图像状态进行备份,即备份图,以获取正确的边界交点。同时还需要记录已填涂过的区域,即安全区域图,用于搜索最小代价的连接路径。在搜索的过程中,若下一点已为空,则先判定未被填充的区域图已为空,若是,则所有路径搜索完成,算法结束;否则,已经搜索到了区域的某个分支终点,将原路径反向后,以同样的方法向另一个方向进行重新搜索,若另一个方向搜索也无法搜到下一点且还有区域未被填充,则根据该路径更新安全区域图,标记新的安全区域,同时更新未被填充的区域图和备份图,并对路径相邻的边界做宽度为size/2的向内等距偏移,然后进入(2);若搜索到的下一点回到了起始点区域,则说明已成环,同样更新安全区域,未被填充的区域图以及备份图,并对路径相邻的边界做宽度为size/2的向内等距偏移,然后在新区域边界上找最近点作为下一点继续搜索路径。
(2).对于经过两头搜索均无法继续的情况,寻找经过安全区域能够连通未填充区域的最小代价连接路径,若该路径的代价小于等于阈值,则连接该路径,同时更新未被填充的区域图、备份图以及安全区域图,并继续步骤(1)中的搜索;若大于给定的阈值,则无法继续连接,该笔画结束,返回步骤(1),从种子点队列中选取新的起始点开始搜索新笔画。为使用Dijkstra算法计算能够连通未填充区域的最小代价路径,对区域图像构造连通图,每个像素作为图中的一个顶点,每个顶点仅与其8邻域顶点连通,连通顶点间边的代价为两顶点代价的均值,顶点的代价为其笔画宽度邻域内位于安全区域外点的个数。为使最终生成的笔画数目尽可能少,需要计算从原始路径的两头开始的最小代价连接路径,只需在构造的连通图中再加入一个顶点,作为虚拟的起点,该起点仅与原始路径的两端点连通,且代价为0。对于Dijkstra算法中的最短路径集合,采用最小堆结构来进行存储和查找,只要找到的最短路径的终点位于未被填充的区域内则最小代价路径搜索结束。
本发明能够得到精确的笔画路径。
另外,本发明的步骤104可以包括:
步骤1041:使用simplify-go简化方法对笔画路径进行简化,其中容差为0.35,包括:
a.RadialDist简化:对于给定的距离容差,依次比较原路径中的所有相邻点,对于距离小于等于给定容差的点进行删除,只保留距离大于给定容差的点。
b.DouglasPeucker简化:对于a中得到的初步简化路径,以路径的起点和终点构造简化线段,计算路径中其余各点到简化线段的最近距离的最大值点,若最大的距离值已小于等于给定的容差距离,则返回简化线段,简化过程结束;若最大的距离值大于给定的容差距离,则保留最大值点为有效点,并利用该最大值点将原路径分成两条简化线段,对每条简化线段重复验证中间各点到简化线段的最近距离最大值,并保留有效点,直到所有的线段在给定容差内均无需加入新的有效点为止,简化过程结束。
本步骤对笔画路径进行初次简化,为后续的简化提供基础。
步骤1042:判断笔画路径上相邻的两点距离是否小于3.0,若是,使用两点的中点代替这两点,得到打印路径。
本步骤中能够合并所述笔画路径上的近似点,删除所述笔画路径上的冗余点,得到打印路径。
本发明能够得到精确的打印路径,提高人脸头像煎饼与原始图的相似程度。
另一方面,本发明提供一种基于人脸识别的煎饼打印路径生成装置,如图2所示,包括:
人脸识别模块11,用于在人脸图像上定位出人脸区域,裁剪得到包括人脸区域的子图像,并在子图像上标记出特征点,特征点位于脸颊、眼睛、眉毛、鼻子和嘴巴处;
图像分层模块12,用于根据特征点以及子图像的颜色明暗特征对子图像进行分层处理,得到三色灰度图;
笔画路径生成模块13,用于对三色灰度图中的每个连通区域进行处理,生成笔画路径;
打印路径生成模块14,用于合并笔画路径上的近似点,删除笔画路径上的冗余点,得到打印路径。
作为本发明的一种改进,人脸识别模块包括:
人脸识别单元,用于使用人脸识别算法,在人脸图像上定位出人脸区域;
图像裁剪单元,用于对人脸图像进行裁剪,得到400*400大小的包含人脸区域的子图像;
特征定位单元,用于使用68点人脸训练模型在子图像上标记出脸颊、眼睛、眉毛、鼻子和嘴巴的位置。
本发明中,图像分层模块可以利用开源库opencv的相关功能进行滤波和聚类等基本操作,具体的,包括:
灰度转换单元,用于将子图像转换成灰度图像,并对灰度图像进行双边滤波处理;
聚类单元,用于对灰度图像上的人脸区域进行聚类操作,得到多层三色子度图;
背景剔除单元,用于对颜色最浅的三色子度图,利用聚类结果,区分出人脸区域颜色最浅的部分和背景区域,并将背景区域剔除;
开运算单元,用于对三色子度图进行圆形模板的开运算,去除噪声和不必要的小细节区域,得到三色子度图的实际有效区域;
灰度图裁剪单元,用于根据人脸区域和特征点的位置以及三色子度图的实际有效区域,进一步裁剪三色子度图;
填充单元,用于填充裁剪后的三色子度图中人脸区域内部的孔洞,导出最终的三色子度图。
对于分层后的灰度图像,首先根据不同的灰度值将原图按层次分开,对于每一层图像利用cv::floodFill遍历出该层的所有连通区域,对于每个连通区域按如下单元生成初始的煎饼笔画路径:
笔画宽度计算单元,用于根据实际打印煎饼的大小以及打印机笔画的粗细,计算size,其中size为打印笔画宽度在灰度图中对应的像素个数;
等距偏移单元,用于将每层三色子度图的原始连通区域做宽度为size/2的向内等距偏移;
路径搜索单元,用于对于等距偏移后的连通区域,选择连通区域边缘上的一点作为起始点开始搜索路径,路径中的下一点为以前一点为中心,宽度为size+2的正方形与连通区域边界的交点,直至路径搜索完成。
另外,本发明中的打印路径生成模块包括:
第一路径进行简化单元,用于使用simplify-go简化方法对笔画路径进行简化,其中容差为0.35;
第二路径进行简化单元,用于判断笔画路径上相邻的两点距离是否小于3.0,若是,使用两点的中点代替这两点,得到打印路径。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种基于人脸识别的煎饼打印路径生成方法,其特征在于,包括:
步骤101:在人脸图像上定位出人脸区域,裁剪得到包括人脸区域的子图像,并在所述子图像上标记出特征点,所述特征点位于脸颊、眼睛、眉毛、鼻子和嘴巴处;
步骤102:根据特征点以及子图像的颜色明暗特征对子图像进行分层处理,得到三色灰度图;
步骤103:对所述三色灰度图中的每个连通区域进行处理,生成笔画路径;
步骤104:合并所述笔画路径上的近似点,删除所述笔画路径上的冗余点,得到打印路径。
2.根据权利要求1所述的基于人脸识别的煎饼打印路径生成方法,其特征在于,所述步骤101包括:
步骤1011:使用人脸识别算法,在人脸图像上定位出人脸区域;
步骤1012:对人脸图像进行裁剪,得到400*400大小的包含所述人脸区域的子图像;
步骤1013:使用68点人脸训练模型在所述子图像上标记出脸颊、眼睛、眉毛、鼻子和嘴巴的位置。
3.根据权利要求2所述的基于人脸识别的煎饼打印路径生成方法,其特征在于,所述步骤102包括:
步骤1021:将所述子图像转换成灰度图像,并对所述灰度图像进行双边滤波处理;
步骤1022:对所述灰度图像上的人脸区域进行聚类操作,得到多层三色子度图;
步骤1023:对颜色最浅的三色子度图,利用聚类结果,区分出人脸区域颜色最浅的部分和背景区域,并将背景区域剔除;
步骤1024:对三色子度图进行圆形模板的开运算,去除噪声和不必要的小细节区域,得到三色子度图的实际有效区域;
步骤1025:根据人脸区域和特征点的位置以及三色子度图的实际有效区域,进一步裁剪三色子度图;
步骤1026:填充裁剪后的三色子度图中人脸区域内部的孔洞,导出最终的三色子度图。
4.根据权利要求3所述的基于人脸识别的煎饼打印路径生成方法,其特征在于,所述步骤103包括:
步骤1031:根据实际打印煎饼的大小以及打印机笔画的粗细,计算size,其中size为打印笔画宽度在灰度图中对应的像素个数;
步骤1032:将每层三色子度图的原始连通区域做宽度为size/2的向内等距偏移;
步骤1033:对于等距偏移后的连通区域,选择连通区域边缘上的一点作为起始点开始搜索路径,路径中的下一点为以前一点为中心,宽度为size+2的正方形与连通区域边界的交点,直至路径搜索完成。
5.根据权利要求1-4任一所述的基于人脸识别的煎饼打印路径生成方法,其特征在于,所述步骤104包括:
步骤1041:使用simplify-go简化方法对所述笔画路径进行简化,其中容差为0.35;
步骤1042:判断所述笔画路径上相邻的两点距离是否小于3.0,若是,使用两点的中点代替这两点,得到打印路径。
6.一种基于人脸识别的煎饼打印路径生成装置,其特征在于,包括:
人脸识别模块,用于在人脸图像上定位出人脸区域,裁剪得到包括人脸区域的子图像,并在所述子图像上标记出特征点,所述特征点位于脸颊、眼睛、眉毛、鼻子和嘴巴处;
图像分层模块,用于根据特征点以及子图像的颜色明暗特征对子图像进行分层处理,得到三色灰度图;
笔画路径生成模块,用于对所述三色灰度图中的每个连通区域进行处理,生成笔画路径;
打印路径生成模块,用于合并所述笔画路径上的近似点,删除所述笔画路径上的冗余点,得到打印路径。
7.根据权利要求6所述的基于人脸识别的煎饼打印路径生成装置,其特征在于,所述人脸识别模块包括:
人脸识别单元,用于使用人脸识别算法,在人脸图像上定位出人脸区域;
图像裁剪单元,用于对人脸图像进行裁剪,得到400*400大小的包含所述人脸区域的子图像;
特征定位单元,用于使用68点人脸训练模型在所述子图像上标记出脸颊、眼睛、眉毛、鼻子和嘴巴的位置。
8.根据权利要求7所述的基于人脸识别的煎饼打印路径生成装置,其特征在于,所述图像分层模块包括:
灰度转换单元,用于将所述子图像转换成灰度图像,并对所述灰度图像进行双边滤波处理;
聚类单元,用于对所述灰度图像上的人脸区域进行聚类操作,得到多层三色子度图;
背景剔除单元,用于对颜色最浅的三色子度图,利用聚类结果,区分出人脸区域颜色最浅的部分和背景区域,并将背景区域剔除;
开运算单元,用于对三色子度图进行圆形模板的开运算,去除噪声和不必要的小细节区域,得到三色子度图的实际有效区域;
灰度图裁剪单元,用于根据人脸区域和特征点的位置以及三色子度图的实际有效区域,进一步裁剪三色子度图;
填充单元,用于填充裁剪后的三色子度图中人脸区域内部的孔洞,导出最终的三色子度图。
9.根据权利要求7所述的基于人脸识别的煎饼打印路径生成装置,其特征在于,所述笔画路径生成模块包括:
笔画宽度计算单元,用于根据实际打印煎饼的大小以及打印机笔画的粗细,计算size,其中size为打印笔画宽度在灰度图中对应的像素个数;
等距偏移单元,用于将每层三色子度图的原始连通区域做宽度为size/2的向内等距偏移;
路径搜索单元,用于对于等距偏移后的连通区域,选择连通区域边缘上的一点作为起始点开始搜索路径,路径中的下一点为以前一点为中心,宽度为size+2的正方形与连通区域边界的交点,直至路径搜索完成。
10.根据权利要求6-9任一所述的基于人脸识别的煎饼打印路径生成装置,其特征在于,所述打印路径生成模块包括:
第一路径进行简化单元,用于使用simplify-go简化方法对所述笔画路径进行简化,其中容差为0.35;
第二路径进行简化单元,用于判断所述笔画路径上相邻的两点距离是否小于3.0,若是,使用两点的中点代替这两点,得到打印路径。
CN201610323885.8A 2016-05-16 2016-05-16 基于人脸识别的3d打印路径生成方法和装置 Active CN106020745B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610323885.8A CN106020745B (zh) 2016-05-16 2016-05-16 基于人脸识别的3d打印路径生成方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610323885.8A CN106020745B (zh) 2016-05-16 2016-05-16 基于人脸识别的3d打印路径生成方法和装置

Publications (2)

Publication Number Publication Date
CN106020745A true CN106020745A (zh) 2016-10-12
CN106020745B CN106020745B (zh) 2019-05-17

Family

ID=57097336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610323885.8A Active CN106020745B (zh) 2016-05-16 2016-05-16 基于人脸识别的3d打印路径生成方法和装置

Country Status (1)

Country Link
CN (1) CN106020745B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106723241A (zh) * 2017-01-09 2017-05-31 浙江大学 一种3d人像食品打印方法
CN108068482A (zh) * 2016-11-10 2018-05-25 王子彩色制版企业有限公司 立体印刷的处理方法
CN108182716A (zh) * 2017-12-28 2018-06-19 厦门大学 一种面向3d打印的基于向量场的图像线刻画生成方法
CN109754467A (zh) * 2018-12-18 2019-05-14 广州市百果园网络科技有限公司 三维人脸构建方法、计算机存储介质和计算机设备
CN111028251A (zh) * 2019-12-27 2020-04-17 四川大学 一种牙科图片剪裁方法、系统、设备及存储介质
CN111626166A (zh) * 2020-05-19 2020-09-04 Oppo广东移动通信有限公司 图像处理方法、装置、电子设备及存储介质
CN113207509A (zh) * 2021-06-08 2021-08-06 重庆市农业科学院 一种蔬菜无人化育苗物流系统
CN114339066A (zh) * 2020-09-30 2022-04-12 上海中兴软件有限责任公司 一种图像处理方法、装置、终端及介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073868A (zh) * 2010-12-28 2011-05-25 北京航空航天大学 基于数字图象闭合轮廓链的图象区域识别方法
CN102609964A (zh) * 2012-01-17 2012-07-25 湖北莲花山计算机视觉和信息科学研究院 肖像剪纸的生成方法
CN103258346A (zh) * 2013-04-24 2013-08-21 苏州华漫信息服务有限公司 一种3d照相打印系统
CN103679739A (zh) * 2013-12-26 2014-03-26 清华大学 基于遮挡区域检测的虚拟视图生成方法
CN103874102A (zh) * 2014-03-27 2014-06-18 广州银禾网络通信有限公司 移动通信传输模型校正测试数据地理平均方法及系统
CN104965595A (zh) * 2015-07-14 2015-10-07 网云(武汉)三维打印科技有限公司 一种2d打印方法和装置
CN105172136A (zh) * 2015-07-30 2015-12-23 范春潮 一种采用彩色3d打印装置快速打印的方法
US20160101568A1 (en) * 2014-10-08 2016-04-14 Xerox Corporation System and method for test pattern formation during three-dimensional object printing

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073868A (zh) * 2010-12-28 2011-05-25 北京航空航天大学 基于数字图象闭合轮廓链的图象区域识别方法
CN102609964A (zh) * 2012-01-17 2012-07-25 湖北莲花山计算机视觉和信息科学研究院 肖像剪纸的生成方法
CN103258346A (zh) * 2013-04-24 2013-08-21 苏州华漫信息服务有限公司 一种3d照相打印系统
CN103679739A (zh) * 2013-12-26 2014-03-26 清华大学 基于遮挡区域检测的虚拟视图生成方法
CN103874102A (zh) * 2014-03-27 2014-06-18 广州银禾网络通信有限公司 移动通信传输模型校正测试数据地理平均方法及系统
US20160101568A1 (en) * 2014-10-08 2016-04-14 Xerox Corporation System and method for test pattern formation during three-dimensional object printing
CN104965595A (zh) * 2015-07-14 2015-10-07 网云(武汉)三维打印科技有限公司 一种2d打印方法和装置
CN105172136A (zh) * 2015-07-30 2015-12-23 范春潮 一种采用彩色3d打印装置快速打印的方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108068482A (zh) * 2016-11-10 2018-05-25 王子彩色制版企业有限公司 立体印刷的处理方法
CN108068482B (zh) * 2016-11-10 2019-09-03 王子彩色制版企业有限公司 立体印刷的处理方法
CN106723241A (zh) * 2017-01-09 2017-05-31 浙江大学 一种3d人像食品打印方法
CN108182716A (zh) * 2017-12-28 2018-06-19 厦门大学 一种面向3d打印的基于向量场的图像线刻画生成方法
CN108182716B (zh) * 2017-12-28 2020-12-15 厦门大学 一种面向3d打印的基于向量场的图像线刻画生成方法
CN109754467A (zh) * 2018-12-18 2019-05-14 广州市百果园网络科技有限公司 三维人脸构建方法、计算机存储介质和计算机设备
CN109754467B (zh) * 2018-12-18 2023-09-22 广州市百果园网络科技有限公司 三维人脸构建方法、计算机存储介质和计算机设备
CN111028251A (zh) * 2019-12-27 2020-04-17 四川大学 一种牙科图片剪裁方法、系统、设备及存储介质
CN111626166A (zh) * 2020-05-19 2020-09-04 Oppo广东移动通信有限公司 图像处理方法、装置、电子设备及存储介质
CN111626166B (zh) * 2020-05-19 2023-06-09 Oppo广东移动通信有限公司 图像处理方法、装置、电子设备及存储介质
CN114339066A (zh) * 2020-09-30 2022-04-12 上海中兴软件有限责任公司 一种图像处理方法、装置、终端及介质
CN113207509A (zh) * 2021-06-08 2021-08-06 重庆市农业科学院 一种蔬菜无人化育苗物流系统

Also Published As

Publication number Publication date
CN106020745B (zh) 2019-05-17

Similar Documents

Publication Publication Date Title
CN106020745A (zh) 基于人脸识别的煎饼打印路径生成方法和装置
CN104834898B (zh) 一种人物摄影图像的质量分类方法
CN107403168B (zh) 一种面部识别系统
CN103456010B (zh) 一种基于特征点定位的人脸卡通画生成方法
CN105825494B (zh) 一种图像处理方法及移动终端
CN104915972B (zh) 图像处理装置、图像处理方法以及程序
CN109460754B (zh) 一种水面异物检测方法、装置、设备及存储介质
CN108733280A (zh) 智能设备的焦点跟随方法、装置、智能设备及存储介质
CN108564120A (zh) 基于深度神经网络的特征点提取方法
CN106960195A (zh) 一种基于深度学习的人群计数方法及装置
CN107145845A (zh) 基于深度学习及多特征点融合的行人检测方法
CN102194108B (zh) 一种聚类线性鉴别分析特征选择的笑脸表情识别方法
CN109657595A (zh) 基于堆叠沙漏网络的关键特征区域匹配人脸识别方法
CN105678813A (zh) 一种肤色检测方法及装置
CN106570447B (zh) 基于灰度直方图匹配的人脸照片太阳镜自动去除方法
CN106909875A (zh) 人脸脸型分类方法和系统
CN105045968B (zh) 一种发型设计方法及系统
CN106504751A (zh) 自适应唇语交互方法以及交互装置
CN109543632A (zh) 一种基于浅层特征融合引导的深层网络行人检测方法
CN104463138B (zh) 基于视觉结构属性的文本定位方法及系统
CN105184802B (zh) 一种图像处理的方法及装置
CN109086723A (zh) 一种基于迁移学习的人脸检测的方法、装置以及设备
CN104850847B (zh) 具有自动瘦脸功能的图像优化系统和方法
CN108537782A (zh) 一种基于轮廓提取的建筑物图像匹配与融合的方法
CN109949237A (zh) 图像处理方法及装置、图像设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant