กลับไปหน้ารวมไฟล์
homework-copying-robot-handwriting-copying-robot-07963d.md

ชื่อโปรเจกต์: หุ่นยนต์คัดลอกการบ้าน | หุ่นยนต์คัดลอกลายมือ

แสดงโปรเจกต์ทั้งหมดในวิดีโอนี้

โปรเจกต์นี้เกี่ยวกับการสร้างหุ่นยนต์ที่สามารถเขียนให้ผมได้ โดยเขียนด้วยลายมือของผมเอง เป็นหุ่นยนต์ที่คัดลอกการบ้านของเพื่อนผมและเขียนให้ผมด้วยลายมือของผม ผมไม่จำเป็นต้องสัมผัสปากกาและกระดาษด้วยซ้ำ เพียงแค่ผมนำการบ้านของใครบางคนมาป้อนเข้าหุ่นยนต์ตัวนี้ แล้วหุ่นยนต์ก็จะเขียนให้ผมลงบนกระดาษ และไม่มีใครเดาได้เลยว่านี่เป็นงานที่เขียนโดยหุ่นยนต์ ไม่ใช่ผม

ผมตัดสินใจสร้างมันขึ้นมาเพราะเบื่อกับการเขียนการบ้าน การคัดลอกการบ้านมันน่าเบื่อ ผมจึงตัดสินใจสร้างหุ่นยนต์ตัวนี้ขึ้นมา

หุ่นยนต์นี้ทำงานบนหลักการของ OCR และการรวมภาพ ซึ่งสามารถป้อนเข้าไปในโปรแกรม Arduino ได้ จากนั้น Arduino จะควบคุม servo motor สองตัว (SG90) เพื่อวาดรูปร่างลงบนกระดาษ มอเตอร์ทำงานด้วยกลไก inverse kinematics.

เพื่อให้หุ่นยนต์นี้สร้างข้อความด้วยลายมือของคุณ มันจำเป็นต้องมีข้อมูลตัวอย่างลายมือของคุณ

ดังนั้น คุณจะต้องเขียนตัวอักษร ตัวเลข และสัญลักษณ์ทั้งหมด

  • ใช้กระดาษเปล่าหนึ่งหน้า
  • เขียน ตัวอักษรพิมพ์ใหญ่ ทั้งหมด (Capital letters) เช่น A-Z.
  • เขียน ตัวอักษรพิมพ์เล็ก ทั้งหมด (Small letters) เช่น a-z.
  • เขียน ตัวเลข ทั้งหมด (numbers) เช่น 0-9.
  • เขียน อักขระพิเศษ ที่เป็นไปได้ทั้งหมด เช่น " ',. ? ! = + - * เป็นต้น

ถ่ายภาพหน้าที่เขียนให้ชัดเจน

ภาพถ่ายอาจจะไม่ตรง ดังนั้น ให้ใช้เครื่องสแกนเอกสารใดๆ ก็ได้ จัดแนวภาพให้ตรง และทำให้พื้นหลังเป็นสีขาว (นี่เป็นสิ่งสำคัญมาก)

รูปภาพตัวอักษรแต่ละตัวที่ถูกคร็อป

จากนั้นคุณต้อง crop รูปภาพให้เป็นภาพย่อยแต่ละภาพ แต่ละ ภาพควรมี ตัวอักษร อยู่ภายใน

เลือก image size (มิติ สูง x กว้าง) และคงที่ไว้ตลอด ผมใช้ image size 60x40.

ตั้งชื่อ รูปภาพที่ crop แล้วตาม ตัวอักษร ที่อยู่ในภาพ ตัวอย่างเช่น ภาพสำหรับ 'a' สามารถตั้งชื่อว่า a.png ในขณะที่ภาพสำหรับ 'A' สามารถตั้งชื่อว่า 'a_capital' หรือ 'a_c' เพื่อให้ง่ายต่อการเข้าถึงในโค้ด

ตอนนี้เขียนโค้ดเพื่อรวมภาพตามข้อความและสนุกไปกับมัน

ภาพอินพุตลายมือที่สแกน

ภาพนี้คือ การบ้าน นี่คือลายมือของ เพื่อน ผม ซึ่งผมจะแปลงให้เป็น ลายมือของผมเอง.

ในการทำเช่นนั้น ผมจะสแกนและแปลงเป็น text ด้วยความช่วยเหลือของ google lens วาง text นี้ลงใน text file ซึ่งได้ระบุพาธของไฟล์นี้ไว้ใน Code แล้ว

ไปที่ IDE & Run code แล้วคุณจะเห็น เวทมนตร์.

เอาต์พุตที่สร้างโดยโค้ด Python

และการบ้านก็ถูกเขียนด้วยลายมือของผมเอง ผมสามารถ ส่ง การบ้านนี้ให้ ครู ได้อย่างง่ายดาย การบ้านที่ถูกสร้างขึ้น อยู่ในรูปแบบ image format ซึ่งสามารถแปลงเป็น PDF ได้หากจำเป็น

แปลงข้อความเป็นลายมือ

หากคุณมีการบ้านหรืองาน assignment และคุณได้คำตอบจาก Google เพียงแค่วาง (paste) ข้อความนั้นลงใน document (text file) แล้ว run code

Screenshot ของ Input Text file

งาน assignment ของคุณจะถูกสร้างขึ้นภายใน ไม่กี่วินาที โดยไม่ต้อง เขียน เลย

ภาพเอาต์พุต

ภาพ/งาน assignment ที่สร้างขึ้นมีความคล้ายคลึงกับลายมือของมนุษย์ 70-80% ประสิทธิภาพนี้สามารถเพิ่มขึ้นได้ง่ายๆ หาก image quality ดี และ scanner มีประสิทธิภาพเพียงพอ

Circuit Schematic

นอกจากนี้ ผมกำลังพยายามพัฒนาต่อยอดกับ Arduino

หุ่นยนต์เขียนลายมือด้วย Arduino

ข้อมูล Frontmatter ดั้งเดิม

title: "Homework Copying Robot | Handwriting Copying Robot"
description: "This is a robot that copies others' homework and writes it in your handwriting. Best in Online Classes during Pandemic."
author: "RoboticsEveryDay"
category: ""
tags:
  - "python"
  - "arduino uno"
  - "robot"
  - "handwriting copyting robot"
  - "sg90 servo motor"
views: 1559
likes: 3
price: 2450
difficulty: "Easy"
components:
  - "1x Solder Wire, Lead Free"
  - "1x Breadboard, 830 Tie Points"
  - "1x Arduino UNO"
  - "1x USB-A to B Cable"
  - "1x Jumper wires (generic)"
  - "1x Scissor, Electrician"
  - "2x SG90 Micro-servo motor"
  - "1x Soldering iron (generic)"
tools: []
apps:
  - "1x Arduino IDE"
downloadableFiles: []
documentationLinks: []
passwordHash: "eea9ff71e8add3e3803a5bf048cb420023d3b7f1dec7243d3f21e593b951ddd1"
encryptedPayload: "U2FsdGVkX19ppmQL014xHuBqPiyjq9TRBiCKUaJtfqNe0eA5TmacObhP4Qa9ywAU1Ko70KU6m5CxZ/3nA02H3mhBhBOSmukpXVZFym1sPfQ="
seoDescription: "Build an Arduino-powered Handwriting Copying Robot. Automate homework with a Robot that replicates your style for Online Classes."
videoLinks:
  - "https://www.youtube.com/embed/pF6kHsMMCL8"
  - "https://www.youtube.com/embed/twLFfcOtiLc"
  - "https://www.youtube.com/embed/Bjv_BW7_CdU"
  - "https://www.youtube.com/embed/Bjv_BW7_CdU"
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/homework-copying-robot-handwriting-copying-robot-07963d_cover.jpg"
lang: "th"