目录

前言

课题背景和意义

实现技术思路

一、 文字识别检测方法

1.1 Inception网络

1.2 文字识别模型

1.3 注意力机制

二、 数据集

三、实验及结果分析

最后


前言

    📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充满挑战。为帮助大家顺利通过和节省时间与精力投入到更重要的就业和考试中去,学长分享优质的选题经验和毕设项目与技术思路。

🚀对毕设有任何疑问都可以问学长哦!

    选题指导:

        最新最全计算机专业毕设选题精选推荐汇总

        大家好,这里是海浪学长毕设专题,本次分享的课题是

       🎯基于深度学习的文字识别检测系统

课题背景和意义

       深度学习在计算机视觉领域取得了巨大的突破,文字识别检测系统基于深度学习的技术能够实现高效、准确地自动识别和提取图像中的文字信息,具有广泛的应用前景。这种系统的出现极大地提升了文档数字化、图像搜索、自动化数据分析等领域的效率和精度,为各行各业的文本处理和信息管理带来了革命性的变化。

实现技术思路

一、 文字识别检测方法

1.1 Inception网络

       为了提高CRNN模型的特征提取能力,引入了Inception网络结构,并对其发展状况进行了介绍。通过与常用的深度网络结构进行对比分析,证明了Inception网络结构的有效性。在基准CRNN模型的基础上,结合Inception网络结构设计了基于Inception网络的文本识别框架,并提出了一种基于Inception网络的文字识别模型。Inception网络主要应用于目标检测领域,其多滤波器并行结构能够学习不同尺度的图像特征。使用Inception网络结构后,即使图像中的脸部大小不同,模型也能够相应地识别出来。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

       将Inception测试模块与卷积层结合构成新的特征提取层,并测试其在文字识别任务中的有效性。该特征提取层能够显著提升文字识别的性能,提供更准确和鲁棒的识别结果。通过利用Inception测试模块的多支路结构和不同尺度滤波器的组合,该特征提取层能够更好地捕捉文字图像中的细节和上下文信息,从而提高识别的准确性和鲁棒性。这种结合的特征提取层为文字识别任务的进一步发展和应用奠定了坚实的基础。

       预处理包括样本筛选和调整,其中样本筛选删除对比度较弱的图片,样本调整将输入图像大小调整为32×512。经过第一层和第二层卷积模块后,输出通道为128。然后,特征图传入Inception测试模块,提取特征后输出通道为512。最后,通过卷积层和平均池化层得到大小为32×512的特征图,进入循环神经网络层。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

1.2 文字识别模型

       Inception网络结构在文字识别任务中通过对卷积层同层特征进行不同尺度的采样,提升了网络的表达能力和特征学习能力。引入了基于Inception网络的文字识别框架,并验证了其有效性。此外,CTC损失函数作为一种端到端训练的方法,在OCR领域被广泛应用。它能够处理预测标签与实际标签长度不等的情况,通过引入空白字符和多对一映射规则,衡量网络预测标签与真实文本标签之间的差距。这些方法和技术的引入为文字识别任务的进一步发展提供了有力支持。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

       网络结构通过保留CRNN模型特征提取模块的部分结构,将前四层和后两层的卷积层和池化层替换为新的Inception结构模块。新特征提取模块采用了Inception网络结构,其中各支路的卷积核大小限制在3以内,以避免特征混淆。该结构包括四个支路,分别是1×1滤波器、1×1和1×3/3×1滤波器串接并行、1×1和3×3滤波器串联并接1×3/3×1滤波器并行、以及3×3平均池化和1×1卷积滤波器串联的混合支路。这些支路的输出通道分别为32、128、192和96,最终输出通道数为488。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

       CRNN模型的特征提取网络结构通常采用多层卷积层和池化层的堆叠,以逐渐提取更丰富的图像特征。这些特征将作为输入传递给RNN部分,用于建立序列模型,实现对文字序列的识别和预测。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

1.3 注意力机制

       注意力分为硬性注意力和软性注意力,神经网络通常使用软性注意力机制。本文使用软性注意力机制设计文字识别模型,常用的软性注意力机制分为Luong和Bahdanau两种。注意力机制通常结合自然语言处理中的Encoder-decoder模型使用。文字识别可以看做一种Encoder-decoder任务。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

       常用软性注意力机制:Luong注意力机制和Bahdanau注意力机制。这两种注意力机制在序列识别任务中被广泛使用。本节分析了这两种注意力结构,并设计实验测试两种注意力机制在文字识别任务中识别的效果。根据实验结果,选择最优的注意力机制设计文字识别模型。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

二、 数据集

       由于网络上没有现有的合适的数据集,决定自己去图书馆进行拍摄,收集书籍封面并制作了一个全新的数据集。这个数据集包含了各种书籍封面的照片,其中包括书名、作者名以及其他相关信息。通过现场拍摄,我能够捕捉到真实的封面样式和多样的书籍类别,这将为我的研究提供更准确、可靠的数据。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

       为了生成更接近真实场景的文字图片,我们应用了数据增强技术对文字图片进行处理。这包括添加噪音、雪花效果和旋转等操作。通过添加噪音和雪花效果,我们模拟了实际场景中的噪声干扰和天气条件对文字图像的影响。同时,通过随机旋转文字图片,我们模拟了文字出现在不同角度和方向上的情况。这些数据增强技术的应用使得生成的文字图片更加多样化且更贴近真实,有助于训练模型适应各种复杂条件下的文字识别任务,并提高模型的性能和准确性。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

三、实验及结果分析

       批量处理大小设置服务器的GPU性能有限,为了确定合适的批量大小,本小节将CRNN模型以不同批量大小(batch size)进行了批量对比实验。批量大小分别为32、64、128、256和512,实验的数据集为ICDAR17,迭代次数100次。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

       输入图片大小设置CRNN模型原则上不限制图片的长度,只需保证高度一致,由于本文使用pytorch中dataloader方法进行批量训练,dataloader需要固定输入特征图,因此论文中除了特别说明外,输入图片都调节为(512,32)的大小送入网络进行训练。没有直接将图片大小调整为(512,32),如果直接调整图片大小,会导致图片失真,丢失图片中的文字信息。

相关代码示例:

def resize_image(image, target_height, target_width):
    height, width = image.shape[:2]

    # 计算宽高比例
    aspect_ratio = width / height

    # 根据目标高度调整图像大小
    resized_height = target_height
    resized_width = int(resized_height * aspect_ratio)

    # 如果调整后的宽度超过目标宽度,则根据目标宽度调整图像大小
    if resized_width > target_width:
        resized_width = target_width
        resized_height = int(resized_width / aspect_ratio)

    # 使用插值方法调整图像大小
    resized_image = cv2.resize(image, (resized_width, resized_height), interpolation=cv2.INTER_AREA)

    # 创建一个空白画布,将调整后的图像居中绘制
    canvas = np.zeros((target_height, target_width, 3), dtype=np.uint8)
    x = (target_width - resized_width) // 2
    y = (target_height - resized_height) // 2
    canvas[y:y+resized_height, x:x+resized_width] = resized_image

    return canvas

       基于Inception网络文字识别模型和CRNN模型,训练后文本行准确率都很低,主要因为ICDAR17数据集分布不均匀,图片数目比较少基于Inception网络文字识别算法的文本行文本准确率比CRNN模型平均提高了5.9%。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

       设计的Inception网络的有效性,表明Inception网络可以有效地学习图像文本特征。CNN加入Inception结构(CNN+Inception组合)的文字特征提取能力得到增强,能够精确表示文字特征,继续加入注意力机制后,经过权重矩阵计算后改变了Inception网络提取的文字序列特征分布,对解码区中LSTM网络的信息传递起到抑制作用,因此在卷积层特征提取性能足够强的情况加入注意力机制的效果比不加注意力机制的效果差。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

       当仅使用CNN网络提取文字特征时(即卷积层的特征提取能力不足的情况),注意力机制能够对CNN提取的文字特征过滤优化,根据注意力权重重新分配文字特征分布,识别效果要更好。

毕业设计选题-基于深度学习的文字识别检测系统 人工智能 机器学习 卷积神经网络

最后

我是海浪学长,创作不易,欢迎点赞、关注、收藏。

毕设帮助,疑难解答,欢迎打扰!

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐