logo好方法网

边缘检测方法和装置、电子设备和存储介质


技术摘要:
一种边缘检测方法、边缘检测装置、电子设备和非瞬时性计算机可读存储介质。边缘检测方法包括:对输入图像进行处理,以得到输入图像中灰度轮廓的线条图,其中,输入图像包括具有边缘的对象,线条图包括多条线条;将多条线条进行合并处理,以得到多条参考边界线;通过第  全部
背景技术:
目前,人们经常对物体(例如,物体可以为名片、试卷、化验单、文档等)进行拍照, 并希望对拍照得到的图像进行相应处理以获得图像中的物体的相关信息。然而,拍照得到 的图像中不仅包含物体,同时还不可避免地包含物体所在的外部环境。而图像中的外部环 境对应的部分对于识别图像中物体的相关信息而言是多余的,因此,在对图像进行处理以 获得图像中物体的相关信息时,需要从图像中检测物体的边缘,以便根据物体的边缘将物 体从图像中提取出来。
技术实现要素:
本公开至少一实施例提供一种边缘检测方法,包括:对输入图像进行处理,以得到 所述输入图像中灰度轮廓的线条图,其中,所述输入图像包括具有边缘的对象,所述线条图 包括多条线条;将所述多条线条进行合并处理,以得到多条参考边界线;通过第一边界区域 识别模型对所述输入图像进行处理,得到与所述具有边缘的对象对应的多个边界区域;针 对所述多条参考边界线中的每一条参考边界线,将所述参考边界线与所述多个边界区域进 行对比,计算所述参考边界线上属于所述多个边界区域的像素点的个数,作为所述参考边 界线的成绩,以确定与所述多条参考边界线一一对应的多个成绩;根据所述多条参考边界 线、所述多个成绩和所述多个边界区域,确定多条目标边界线;根据确定的所述多条目标边 界线确定所述具有边缘的对象在所述输入图像中的边缘。 例如,在本公开一实施例提供的边缘检测方法中,将所述参考边界线与所述多个 边界区域进行对比,计算所述参考边界线上属于所述多个边界区域的像素点的个数,作为 所述参考边界线的成绩,包括:根据所述多个边界区域确定边界区域矩阵;将所述参考边界 线进行延长以得到延长后的参考边界线;根据所述延长后的参考边界线确定线条矩阵;将 所述线条矩阵与所述边界区域矩阵进行对比,计算所述延长后的参考边界线上属于所述边 界区域矩阵的像素点的个数,作为所述参考边界线的成绩,其中,所述线条矩阵与所述边界 区域矩阵的大小相同。 例如,在本公开一实施例提供的边缘检测方法中,根据所述延长后的参考边界线 确定线条矩阵包括:将所述延长后的参考边界线中的像素点的位置信息对应到图像矩阵 中;将所述图像矩阵中对应于所述延长后的参考边界线的像素点的值设置为第一数值,将 所述图像矩阵中的所述延长后的参考边界线对应的像素点以外的像素点的值设置为第二 数值,从而形成所述线条矩阵。 例如,在本公开一实施例提供的边缘检测方法中,根据所述多条参考边界线、所述 多条参考边界线的成绩和所述多个边界区域,确定多条目标边界线,包括:分别将所述多个 8 CN 111598074 A 说 明 书 2/23 页 边界区域转换为多个直线组,其中,所述多个直线组与所述多个边界区域一一对应,所述多 条直线组中的每个直线组包括至少一条直线;计算与所述多个直线组一一对应的多个平均 斜率;分别计算所述多条参考边界线的斜率;针对所述多条参考边界线中的第i条参考边界 线,判断所述第i条参考边界线的斜率和所述多个平均斜率中与所述第i条参考边界线对应 的平均斜率的差值是否高于第一斜率阈值,其中,i为正整数,i小于等于所述多条参考边界 线的数量;响应于所述第i条参考边界线的斜率和与所述第i条参考边界线对应的平均斜率 的差值低于等于所述第一斜率阈值,确定所述第i条参考边界线为目标参考边界线,从而从 所述多条参考边界线中确定多条目标参考边界线;根据所述多条目标参考边界线对应的参 考边界线的成绩,确定多条中间目标边界线;根据所述多条中间目标边界线,确定所述多条 目标边界线。 例如,在本公开一实施例提供的边缘检测方法中,所述多个边界区域包括第一边 界区域、第二边界区域、第三边界区域和第四边界区域,所述多条参考边界线包括与所述第 一边界区域对应的第一参考边界线组、与所述第二边界区域对应的第二参考边界线组、与 所述第三边界区域对应的第三参考边界线组、与所述第四边界区域对应的第四参考边界线 组,所述方法还包括:响应于所述多条参考边界线中的被选中的参考边界线组中的所有参 考边界线的斜率和与所述被选中的参考边界线组对应的平均斜率的差值均高于所述第一 斜率阈值,其中,所述被选中的参考边界线组为所述第一参考边界线组或所述第二参考边 界线组或所述第三参考边界线组或所述第四参考边界线组;获取与所述被选中的参考边界 线组对应的被选中的边界区域,其中,所述被选中的边界区域为所述第一边界区域或所述 第二边界区域或所述第三边界区域或所述第四边界区域;根据所述被选中的边界区域对应 的直线组,确定所述被选中的边界区域对应的直线组的中线,确定所述中线作为所述被选 中的边界区域对应的目标边界线。 例如,在本公开一实施例提供的边缘检测方法中,根据所述多条中间目标边界线, 确定所述多条目标边界线,包括:针对所述多条中间目标边界线中的第k条中间目标边界 线,对所述第k条中间目标边界线进行重合度判断,以确定所述第k条中间目标边界线是否 为目标边界线,其中,对所述第k条中间目标边界线进行重合度判断包括:计算所述第k条中 间目标边界线的落入所述第k条中间目标边界线对应的边界区域的像素点和所述第k条中 间目标边界线的所有像素点的比例,其中,k为正整数,k小于等于所述多条中间目标边界线 的数量;判断所述比例是否大于等于比例阈值;响应于所述比例大于等于所述比例阈值,确 定所述第k条中间目标边界线为目标边界线,对所述多条中间目标边界线进行所述重合度 判断以确定所述多条目标边界线;响应于所述比例小于所述比例阈值,删除所述第k条中间 目标边界线,并继续对所述多条中间目标边界线中除了所述第k条中间目标边界线之外的 任一中间目标边界线进行所述重合度判断。 例如,在本公开一实施例提供的边缘检测方法中,分别将所述多个边界区域转换 为多个直线组,包括:利用霍夫变换分别将所述多个边界区域转换为所述多个直线组。 例如,在本公开一实施例提供的边缘检测方法中,对输入图像进行处理,以得到所 述输入图像中灰度轮廓的线条图,包括:通过边缘检测算法对所述输入图像进行处理,获得 所述输入图像中灰度轮廓的线条图。 例如,在本公开一实施例提供的边缘检测方法中,对输入图像进行处理,以得到所 9 CN 111598074 A 说 明 书 3/23 页 述输入图像中灰度轮廓的线条图,包括:通过第二边界区域识别模型对所述输入图像进行 处理,得到所述多个边界区域;通过边缘检测算法对所述多个边界区域进行处理,获得所述 输入图像中灰度轮廓的线条图。 例如,在本公开一实施例提供的边缘检测方法中,所述多条参考边界线被划分为 与所述多个边界区域一一对应多个参考边界线组,所述多个参考边界线组中的每个参考边 界线组包括至少一条参考边界线,将所述多条线条进行合并处理,以得到所述多条参考边 界线,包括:将所述多条线条中相似的线条进行合并,得到多个初始合并线条组,其中,所述 多个初始合并线条组与所述多个边界区域一一对应,所述多个初始合并线条组中的每个初 始合并线条组包括至少一条初始合并线条;根据所述多个初始合并线条组,确定多条边界 连接线条,其中,所述多条边界连接线条与所述多个边界区域一一对应,所述多条边界连接 线条与所述多个初始合并线条组也一一对应;分别将所述多个边界区域转换为多个直线 组,其中,所述多个直线组与所述多个边界区域一一对应,所述多条直线组中的每个直线组 包括至少一条直线;计算与所述多个直线组一一对应的多个平均斜率;分别计算所述多条 边界连接线条的斜率;针对所述多条边界连接线条中的第b1条边界连接线条,判断所述第 b1条边界连接线条的斜率和所述多个平均斜率中与所述第b1条边界连接线条对应的平均 斜率的差值是否高于第二斜率阈值,其中,b1为正整数,b1小于等于所述多条边界连接线条 的数量;响应于所述第b1条边界连接线条的斜率和与所述第b1条边界连接线条对应的平均 斜率的差值低于等于所述第二斜率阈值,将所述第b1条边界连接线条和所述第b1条边界连 接线条对应的初始合并线条组中的初始合并线条作为所述第b1条边界连接线条对应的边 界区域对应的参考边界线组中的参考边界线,响应于所述第b1条边界连接线条的斜率和与 所述第b1条边界连接线条对应的平均斜率的差值高于所述第二斜率阈值,将所述第b1条边 界连接线条对应的初始合并线条组中的初始合并线条作为所述第b1条边界连接线条对应 的边界区域对应的参考边界线组中的参考边界线,从而确定所述多条参考边界线。 例如,在本公开一实施例提供的边缘检测方法中,将所述多条线条中相似的线条 进行合并,得到多个初始合并线条组,包括:获取所述多条线条中的多条长线条,其中,所述 多条长线条中的每条长线条为长度超过长度阈值的线条;根据所述多条长线条,获取多个 合并线条组,其中,所述多个合并线条组中的每个合并线条组包括至少两个依次相邻的长 线条,且每个所述合并线条组中的任意相邻的两个长线条之间的夹角均小于角度阈值;针 对所述多个合并线条组中的每个合并线条组,将所述合并线条组中的各个长线条依次进行 合并以得到与所述合并线条组对应的初始合并线条,分别对所述多个合并线条组进行合并 处理以确定所述多个初始合并线条组中的初始合并线条。 例如,在本公开一实施例提供的边缘检测方法中,根据所述多个初始合并线条组, 确定多条边界连接线条,包括:针对所述多个初始合并线条组中的第b2个初始合并线条组, 按照所述第b2个初始合并线条组中的初始合并线条的排列方向对所述第b2个初始合并线 条组中的初始合并线条进行排序,以确定所述第b2个初始合并线条组中的第一条初始合并 线条和最后一条初始合并线条;将所述第一条初始合并线条的起点和所述最后一条初始合 并线条的终点连接,以得到所述第b2个初始合并线条组对应的边界连接线条,从而确定所 述多条边界连接线条,其中,b2为正整数,b2小于等于所述多个初始合并线条组的数量。 例如,本公开一实施例提供的边缘检测方法还包括:获得所述多条目标边界线的 10 CN 111598074 A 说 明 书 4/23 页 多个交点,对所述多个交点和所述多条目标边界线确定的区域进行投影变换,得到所述输 入图像中的所述具有边缘的对象的正视图。 本公开至少一实施例还提供一种边缘检测装置,包括:获取模块,被配置为对输入 图像进行处理,以得到所述输入图像中灰度轮廓的线条图,其中,所述输入图像包括具有边 缘的对象,所述线条图包括多条线条;合并模块,被配置为将所述多条线条进行合并处理, 以得到多条参考边界线;识别模块,被配置为通过第一边界区域识别模型对所述输入图像 进行处理,得到与所述具有边缘的对象对应的多个边界区域;成绩计算模块,被配置为针对 所述多条参考边界线中的每一条参考边界线,将所述参考边界线与所述多个边界区域进行 对比,计算所述参考边界线上属于所述多个边界区域的像素点的个数,作为所述参考边界 线的成绩,以确定与所述多条参考边界线一一对应的多个成绩;第一确定模块,被配置为根 据所述多条参考边界线、所述多个成绩和所述多个边界区域,确定多条目标边界线;第二确 定模块,被配置为根据确定的所述多条目标边界线确定所述具有边缘的对象的边缘。 例如,在本公开一实施例提供的边缘检测装置中,所述成绩计算模块执行将所述 参考边界线与所述多个边界区域进行对比,计算所述参考边界线上属于所述多个边界区域 的像素点的个数,作为所述参考边界线的成绩时,所述成绩计算模块被配置为:根据所述多 个边界区域确定边界区域矩阵;将所述参考边界线进行延长以得到延长后的参考边界线; 根据所述延长后的参考边界线确定线条矩阵;将所述线条矩阵与所述边界区域矩阵进行对 比,计算所述延长后的参考边界线上属于所述边界区域矩阵的像素点的个数,作为所述参 考边界线的成绩,其中,所述线条矩阵与所述边界区域矩阵的大小相同。 例如,在本公开一实施例提供的边缘检测装置中,所述第一确定模块执行根据所 述多条参考边界线、所述多条参考边界线的成绩和所述多个边界区域,确定多条目标边界 线时,所述第一确定模块被配置为:分别将所述多个边界区域转换为多个直线组,其中,所 述多个直线组与所述多个边界区域一一对应,所述多条直线组中的每个直线组包括至少一 条直线;计算与所述多个直线组一一对应的多个平均斜率;分别计算所述多条参考边界线 的斜率;针对所述多条参考边界线中的第i条参考边界线,判断所述第i条参考边界线的斜 率和所述多个平均斜率中与所述第i条参考边界线对应的平均斜率的差值是否高于第一斜 率阈值,其中,i为正整数,i小于等于所述多条参考边界线的数量;响应于所述第i条参考边 界线的斜率和与所述第i条参考边界线对应的平均斜率的差值低于等于所述第一斜率阈 值,确定所述第i条参考边界线为目标参考边界线,从而从所述多条参考边界线中确定多条 目标参考边界线;根据所述多条目标参考边界线对应的参考边界线的成绩,确定多条中间 目标边界线;根据所述多条中间目标边界线,确定所述多条目标边界线。 例如,在本公开一实施例提供的边缘检测装置中,所述多个边界区域包括第一边 界区域、第二边界区域、第三边界区域和第四边界区域,所述多条参考边界线包括与所述第 一边界区域对应的第一参考边界线组、与所述第二边界区域对应的第二参考边界线组、与 所述第三边界区域对应的第三参考边界线组、与所述第四边界区域对应的第四参考边界线 组,所述第一确定模块还被配置为:响应于所述多条参考边界线中的被选中的参考边界线 组中的所有参考边界线的斜率和与所述被选中的参考边界线组对应的平均斜率的差值均 高于所述第一斜率阈值,其中,所述被选中的参考边界线组为所述第一参考边界线组或所 述第二参考边界线组或所述第三参考边界线组或所述第四参考边界线组;获取与所述被选 11 CN 111598074 A 说 明 书 5/23 页 中的参考边界线组对应的被选中的边界区域,其中,所述被选中的边界区域为所述第一边 界区域或所述第二边界区域或所述第三边界区域或所述第四边界区域;根据所述被选中的 边界区域对应的直线组,确定所述被选中的边界区域对应的直线组的中线,确定所述中线 作为所述被选中的边界区域对应的目标边界线。 例如,在本公开一实施例提供的边缘检测装置中,所述第一确定模块执行根据所 述多条中间目标边界线,确定所述多条目标边界线时,所述第一确定模块被配置为:针对所 述多条中间目标边界线中的第k条中间目标边界线,对所述第k条中间目标边界线进行重合 度判断,以确定所述第k条中间目标边界线是否为目标边界线,其中,对所述第k条中间目标 边界线进行重合度判断包括:计算所述第k条中间目标边界线的落入所述第k条中间目标边 界线对应的边界区域的像素点和所述第k条中间目标边界线的所有像素点的比例,其中,k 为正整数,k小于等于所述多条中间目标边界线的数量;判断所述比例是否大于等于比例阈 值;响应于所述比例大于等于所述比例阈值,确定所述第k条中间目标边界线为目标边界 线,对所述多条中间目标边界线进行所述重合度判断以确定所述多条目标边界线;响应于 所述比例小于所述比例阈值,删除所述第k条中间目标边界线,并继续对所述多条中间目标 边界线中除了所述第k条中间目标边界线之外的任一中间目标边界线进行所述重合度判 断。 例如,在本公开一实施例提供的边缘检测装置中,所述多条参考边界线被划分为 与所述多个边界区域一一对应多个参考边界线组,所述多个参考边界线组中的每个参考边 界线组包括至少一条参考边界线,所述合并模块执行将所述多条线条进行合并处理,以得 到多条参考边界线时,所述合并模块被配置为:将所述多条线条中相似的线条进行合并,得 到多个初始合并线条组,其中,所述多个初始合并线条组与所述多个边界区域一一对应,所 述多个初始合并线条组中的每个初始合并线条组包括至少一条初始合并线条;根据所述多 个初始合并线条组,确定多条边界连接线条,其中,所述多条边界连接线条与所述多个边界 区域一一对应,所述多条边界连接线条与所述多个初始合并线条组也一一对应;分别将所 述多个边界区域转换为多个直线组,其中,所述多个直线组与所述多个边界区域一一对应, 所述多条直线组中的每个直线组包括至少一条直线;计算与所述多个直线组一一对应的多 个平均斜率;分别计算所述多条边界连接线条的斜率;针对所述多条边界连接线条中的第 b1条边界连接线条,判断所述第b1条边界连接线条的斜率和所述多个平均斜率中与所述第 b1条边界连接线条对应的平均斜率的差值是否高于第二斜率阈值,其中,b1为正整数,b1小 于等于所述多条边界连接线条的数量;响应于所述第b1条边界连接线条的斜率和与所述第 b1条边界连接线条对应的平均斜率的差值低于等于所述第二斜率阈值,将所述第b1条边界 连接线条和所述第b1条边界连接线条对应的初始合并线条组中的初始合并线条作为所述 第b1条边界连接线条对应的边界区域对应的参考边界线组中的参考边界线,响应于所述第 b1条边界连接线条的斜率和与所述第b1条边界连接线条对应的平均斜率的差值高于所述 第二斜率阈值,将所述第b1条边界连接线条对应的初始合并线条组中的初始合并线条作为 所述第b1条边界连接线条对应的边界区域对应的参考边界线组中的参考边界线,从而确定 所述多条参考边界线。 本公开至少一实施例提供一种电子设备,包括处理器和存储器,所述存储器用于 存储计算机可读指令;所述处理器用于执行所述计算机可读指令时,实现上述任一实施例 12 CN 111598074 A 说 明 书 6/23 页 所述的方法的步骤。 本公开至少一实施例提供一种非瞬时性计算机可读存储介质,其中,所述计算机 可读存储介质用于非暂时性地存储有计算机可读指令,所述计算机可读指令被处理器执行 时实现上述任一实施例所述的方法的步骤。 附图说明 为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介 绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。 图1为本公开至少一实施例提供的一种边缘检测方法的示意性流程图; 图2A-2C为本公开一实施例提供的一种输入图像的示意图; 图3A-3C为本公开一实施例提供的另一种输入图像的示意图; 图4为本公开一实施例提供的一种线条合并过程的示意图; 图5为本公开至少一实施例提供的一种边缘检测装置的示意性框图; 图6为本公开至少一实施例提供的一种电子设备的示意性框图; 图7为本公开至少一实施例提供的一种非瞬时性计算机可读存储介质的示意图; 图8为本公开至少一实施例提供的一种硬件环境的示意图。
分享到:
收藏