Category Archives: programming

วิทย์ม.ต้น: หัดต่อภาพทำ Collage ด้วย Pillow กัน

วันศุกร์ที่ผ่านมาเด็กๆหัดใช้ Pillow ต่ออีกครับ ครั้งที่แล้วต่อภาพสองภาพในแนวตั้งและแนวนอนได้แล้ว คราวนี้ลองต่อหลายๆภาพเข้าด้วยกันเป็น Collage เล่นดู การบ้านเด็กๆคือให้ไปพยายามรวมภาพเข้าด้วยกันให้ดูดีๆ หรือไม่ก็สร้างออกมาทีละหลายๆภาพแล้วเลือกเอาครับ

ตัวอย่างการใช้ Pillow ให้เด็กศึกษาเพิ่มเติมมีเช่นที่ https://automatetheboringstuff.com/chapter17/ และ https://pillow.readthedocs.io/en/stable/handbook/tutorial.html

ข้อมูลอ้างอิงเกี่ยวกับ Pillow ไว้ทำความเข้าใจให้ลึกขึ้น: https://pillow.readthedocs.io/en/stable/handbook/concepts.html

วิธีสลับของหรือเลือกของแบบสุ่มดูได้จากลิงก์เหล่านี้ครับ: https://pynative.com/python-random-shuffle/ และ https://pynative.com/python-random-choice/ และดูลิงก์ https://docs.python.org/3/library/random.html สำหรับฟังก์ชั่นเกี่ยวกับการสุ่มต่างๆใน Python

สามารถดาวน์โหลด Jupyter Notebook ที่มีตัวอย่างโค้ดได้ที่นี่ครับ

วิทย์ม.ต้น: ใช้ Pillow ใน Python รวมภาพเข้าด้วยกัน

วันศุกร์ที่ผ่านมาเด็กๆหัดใช้ Pillow กันต่อครับ (ต่อจากศุกร์ที่แล้ว) คราวนี้โจทย์คือต่อภาพสองภาพเข้าด้วยกันโดยสามารถกำหนดความสูงหรือความกว้างภาพผลลัพธ์ได้ เด็กๆก็ศึกษาวิธีทำจาก https://automatetheboringstuff.com/chapter17/ และ https://pillow.readthedocs.io/en/stable/handbook/index.html และค่อยๆเขียนโปรแกรมไปครับ

หน้าตาของตัวโปรแกรมจะเป็นประมาณนี้ครับ:

สามารถดาวน์โหลด Jupyter Notebook ที่มีตัวอย่างโค้ดทั้งหมดที่นี่นะครับ

วิทย์ม.ต้น: หัดใช้ Pillow ใน Python เพื่อจัดการภาพ

วันศุกร์ที่ผ่านมาผมแนะนำให้เด็กๆรู้จัก Pillow ซึ่งมีความสามารถในการจัดการรูปภาพและใช้ได้ง่ายๆจาก Python ถ้าติดตั้ง Anaconda Python แบบที่เด็กๆติดตั้งก็จะสามารถเรียกใช้ได้เลย ไม่อย่างนั้นต้องไปโหลดที่ https://python-pillow.org

เด็กๆหัดใช้ Pillow ตามหนังสือ Automate the Boring Stuff with Python บทที่ 17 หัดเปิดภาพ และพิมพ์คำสั่งต่างๆตามหนังสือ

ผมใช้ Pillow ทำโปรแกรมตัวอย่างทำภาพอนิเมชั่น อย่างที่เด็กๆได้เล่นและหัดอธิบายการทำงานไปเมื่อวันพุธ โดยโปรแกรมจะจัดเรียงส่วนต่างๆของภาพ 6 ภาพมาต่อกันเป็นภาพเคลื่อนไหวให้ถูกต้อง

หน้าตาโปรแกรมส่วนจัดขนาดให้เหมาะสมเป็นอย่างนี้ครับ:

ส่วนที่เอาภาพหลายๆภาพมาหั่นเป็นชิ้นๆแล้วต่อกันให้ถูกต้องเหมาะที่เป็นอนิเมชั่นหน้าตาแบบนี้ครับ:

ตัวอย่างการเรียกใช้ให้จัดการภาพ 6 ภาพ (1.JPG, 2.JPG, 3.JPG, 4.JPG, 5.JPG, 6.JPG) ให้มารวมกันเป็นภาพเดียว (result3.JPG) ทำแบบนี้ครับ:

สามารถโหลด Jupyter notebook ที่มีโปรแกรมเหล่านี้ได้ที่นี่ครับ