Handwritten Code Recognition for Pen-and-Paper CS Education

2024年08月07日
  • 简介
    通过让学生在纸上手写程序来教授计算机科学(CS)具有重要的教学优势:相比使用带有智能支持工具或“试试看”的集成开发环境(IDE),它可以实现专注学习和需要仔细思考。笔和纸这个熟悉的环境也减轻了没有计算机使用经验的学生的认知负荷,对于他们来说,仅仅是使用计算机就可能令人生畏。最后,这种教学方法为计算机使用受限的学生开启了学习机会。 然而,一个关键障碍是目前缺乏处理和运行手写程序的教学方法和支持软件。手写代码的光学字符识别(OCR)具有挑战性:由于手写风格的多样性,轻微的OCR错误很容易使代码无法运行,并且像Python这样的语言识别缩进是至关重要的,但由于手写的水平间距不一致,这很难做到。我们的方法结合了两种创新方法。第一种方法将OCR与缩进识别模块和针对后OCR错误校正而设计的语言模型相结合,而不会引入幻觉。据我们所知,这种方法超过了所有现有的手写代码识别系统。它将错误从现有技术中的30%降至5%,并且对学生程序的逻辑修复最小化幻觉。第二种方法利用多模态语言模型以端到端的方式识别手写程序。我们希望这一贡献能够激发进一步的教学研究,并为实现普遍可访问的CS教育目标做出贡献。我们发布了一个手写程序和代码数据集,以支持未来的研究,网址为https://github.com/mdoumbouya/codeocr。
  • 作者讲解
  • 图表
  • 解决问题
    手写代码的OCR识别是一个挑战,如何通过OCR技术和语言模型来实现手写代码的识别和纠错?
  • 关键思路
    该论文提出了一种结合OCR和缩进识别模块以及语言模型的方法来实现手写代码的识别和纠错,该方法相较于现有系统可以将错误率从30%降低到5%。
  • 其它亮点
    论文开放了手写代码数据集以支持未来的研究,实验结果表明该方法可以有效地识别和纠正手写代码,为计算机科学教育的普及做出了贡献。
  • 相关研究
    最近的相关研究包括基于深度学习的手写字符识别和OCR技术的发展,如《A Comprehensive Survey on Handwritten Character Recognition with Deep Learning Techniques》和《OCRopus – a free OCR system》等。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问