Python for Image Processing 2025/1 – BHE 2025

Today, I had the opportunity to deliver a workshop on Introduction to Python, specifically targeting its application in image processing. This workshop was part of a preparatory class for UMPSA double-degree students, who will be enrolling in their image processing course next semester. The objective was to provide them with a foundation in Python programming through a hands-on project-based approach.

Instead of a conventional lecture-style introduction to Python, the workshop focused on a project-based learning approach, where students were introduced to programming concepts by developing a Slider Game. This project served as an engaging platform to explore Python syntax and core programming concepts, including:

      1. Pixels and Color Schemes – Understanding how colors and pixels form the basis of image processing.
      2. Object-Oriented Programming (OOP) – Declaring objects, defining classes, and implementing methods.
      3. Control Statements – Implementing loops (for, while) and conditional statements (if-else).
      4. Event Handling – Managing user input and interactions within the game.
      5. Timers – Implementing countdowns and delays for interactive experiences.

This step-by-step approach helped students grasp the syntax and structure of Python while simultaneously building a fun, interactive game.

Following the Python fundamentals and project development, the workshop transitioned into setting up Anaconda, a critical tool for managing Python environments and dependencies efficiently. Special attention was given to embedding the .yml environment file prepared by the image processing course coordinator. This ensured that students had access to all key libraries and tools required for their upcoming course, including:

      1. scikit-image – For advanced image processing tasks.
      2. Matplotlib – For data visualization and plotting image transformations.
      3. OpenCV – For real-time image manipulation and computer vision applications.

By setting up a pre-configured environment, we aimed to provide students with a smooth learning experience without the hassle of installing dependencies manually.

The workshop concluded with a hands-on session exploring fundamental image processing techniques. Students experimented with:

      1. Image Scaling – Resizing and adjusting image dimensions.
      2. Color Manipulation – Converting RGB images to grayscale.
      3. Basic Filters & Enhancements – Adjusting brightness, contrast, and sharpening.

As a final exercise, students worked with the iconic Lenna.png file, applying different transformations to understand basic image properties.

This workshop was an exciting and fulfilling experience, as it introduced students to Python programming in a practical and engaging manner. By developing a project along the way, they not only learned Python syntax and concepts but also experienced how these concepts translate into real-world applications like image processing. I truly enjoyed guiding them through this process and hope they found this approach refreshing and insightful.

Wishing all the students the best of luck in their upcoming image processing course! Looking forward to seeing how they apply Python in their projects and beyond.

BTE1522 DRE2213 – Week 8 – Assignment Presentation

  1. Pause ane Resume
  2. Restart and Quit
  3. Initialization
  4. Multiplayer
  5. MultiEnemy
1 CLICK HERE 

CLICK HERE

 RAJA RE23313, SKANTHANESSH RE23028, ARIF DANIEL RE22197 https://youtu.be/wdr8H9__MGU LEE TG23095

ALIYA TG23102

Belal TG23126

6   CLICK HERE  SYAHMI TB24018, 

SHAFIQ TB24026

SYAFIQ TB24031

7 https://youtu.be/Fex0y6rYwsk  HABEEB RE23111, SYIDI RE23077

JIHAN RE23223

https://youtu.be/zobtlQxvhlk  HAKIMI TG23107

ANISH TG23127

HAZIQ TG23117

9 https://youtu.be/OhULOoHPlEM?si=9Gwsce8ryL9sYDIz   FONG RE23057, CHOO  RE23297

Zunaizah RE23248

https://youtu.be/g4y_-jlHNr4  ADIB TB2023

HAZIM TG24012

NUR SYAFIQ TB24007

10 https://www.youtube.com/watch?v=SF0_KpB2HUk LAW RE23293, GABRIEL RE23074

FARIDRE23324

https://youtu.be/e_xzHZlKjpY  MAIRA TG24026

ELLIANA TB24015 

11 click here IZZAT RE23157. 4, AIZAD RE23147

LUTFY RE23161

https://youtu.be/9loZbNFo8-g?feature=shared TANIA (TB24029)

NITHYAA(TB24027)

12  https://youtu.be/0qKAwQwh8NE FADE (TB24024)

ALIF (TB24030)

14   https://youtu.be/mtovpGBYEpk?si=sDmPPAo0LGhzKnQ2    DYRAND TG23112

 ADAM TG23086

 ALISA TG23111

15 https://youtu.be/8ZNOtMVddeQ  FATTAH RE23218, HAIKAL RE23208

FAHIM RE23267

https://youtu.be/V4jSDcJGpcA   Daniel Aufa TB24043

Danish Haikal TG24006

17 https://youtu.be/YuhGqjvRMwY?si=Jy1aS9OD78UHzybd DANIEAL RE23281, MAHI RE23174, IZDIHAR RE23292 https://youtu.be/YHngQFqPuDI   RAZIQ TG24007
SYAHEY TG24011TINESH TG244013
18  https://youtu.be/dh4DtpmEnCQ  IQBAL RE23150, HAKIM RE23211, BUKHARI RE22109 https://youtu.be/7oTHYKsIeCI  CAIROL (TB24012)

FRANCES (TB24014)

KANA (TB24017)

19 https://youtu.be/ql6ugbFjPyU HAZIQ RE23120

AIMAN RE23163

ARIF RE23320

https://youtu.be/mbikg-wHGgA?si=oputKtcMW-UzHVmQ MUHD IMRAN HAKIM TG24020

KAZRI  TG24005

AHMAD ATIQ TG24009

20   ALIF TB24011

HAIKAL TB24019

BTE1522 DRE2213 – Week 15 – Project Presentation

Well done everyone!

BTE1522

  1. Environmental Monitoring Station
  2. Attendance System-with Facial Recognition System
  3. Real-time Video Streaming
  4. Realtime Data-Logger
  5. Real-Time Data Logger
  6. Motion Detector
  7. Realtime Distance Monitoring
  8. Navigation with GPS
  9. Automation Starter
  10. Distant Meter
  11. Motion Tracker
  12. Obstacle Detection
  13. GPS Tracker

DRE2213

  1. Object Detection
  2. Temperature Detector
  3. Weather Dashboard
  4. Smart Surveillance System

  5. Weather Companion
  6. Image & Acccelerator Dashboard
  7.  Weather Station
  8. Fitness Tracker
  9. Image Tracker
  10. Motion Gesture Sensor

Raspberry Pi Programming 2025/1 – KV Kajang

*UMPSA STEM Lab Raspberry Pi Programming Synopsis can be found here.

In the Raspberry Pi IoT session, 35 students and teachers from Kolej Vokasional Kajang were introduced to the concept of the Internet of Things (IoT) using Raspberry Pi on the UMP STEM Cube, a pico-satellite learning kit specifically designed to facilitate engineering learning.

The content covered basic digital input/output operations on onboard LEDs, as well as topics such as dashboard design using gyro meter and BMU280 sensor data, including collecting and storing data in a cloud database. Participants learned to interface sensors with Raspberry Pi boards and develop IoT applications for real-world scenarios. The session provided students with valuable insights into IoT technology and its applications in various domains.

A special appreciation is extended to Pn Rohayu, Ts Adam and Mr Siva from KV Kajang for coordination in facilitating communication between the participants and the UMPSA STEM Lab :).

Jan 22nd

 

BTE1522 DRE2323 – Week 14 Class Wrap

Hello BTE-ian and DRE-ian,

It’s officially a wrap. Thank you!

I hope you enjoyed the classes as much as I do.

 

Senior Design Project sharing

Project quarantine

As the semester draws to a close, Week 14 marked the end of our BTE/DRE classes with a comprehensive and reflective session. Let’s revisit our achievements, connect with inspiring senior projects, and engage in meaningful discussions about our learning experiences. Here’s a recap of the highlights from this final class.


A. Revisiting Targeted Learning Outcomes

The Course Learning Outcomes (CLOs) to reflect on the skills and knowledge gained throughout the semester:

The activities in class (week 1 – Week 13) are aligned with these outcomes, from setting up Raspberry Pi devices to developing functional Python programs and integrating hardware components into practical projects.


B. Learning from Senior Design Projects

Presentations by five senior students attached to the UMPSA STEM Lab, where they shared their design projects, providing insights into advanced applications of Raspberry Pi, the UMPSA STEM Cube, and sensors like LiDAR and cameras. Their projects demonstrated the application of technology in analytics and problem-solving, including:

  • Environmental monitoring systems using Raspberry Pi and sensors.
  • Autonomous navigation projects leveraging LiDAR for spatial awareness.
  • UMPSA STEM Cube-based solutions for data collection and analytics.
  • Camera-enabled AI systems for image recognition and analysis.
  • Innovative control systems that integrate various sensors for precision tasks.

These presentations served as a source of inspiration and a roadmap for how you can build on their foundational skills to tackle complex, real-world problems.


C. Reviewing the Pedagogical Approach used in BTE1522 and DRE2213 – Project-Based Learning

This semester’s pedagogy centered on project-based learning, emphasizing active participation and hands-on experience. The two primary projects included:

  1. Slider Game Development
    • You’ve applied Python programming concepts to create a fully functional video game. This activity fostered an understanding of variables, loops, control structures, and debugging techniques.
  2. Digital Making Projects
    • These involved integrating Raspberry Pi and sensors to develop functional hardware solutions, such as digital input/output systems, conditional statements, and data display mechanisms.

By engaging in these projects, I believe you have learned programming through the process of building and problem-solving. This approach not only reinforced technical skills but also encouraged creativity, critical thinking, and resilience in troubleshooting challenges.


D. Reflective Discussion and Deliberation

To conclude the session, we engaged in a reflective discussion with the following prompts:

  1. What Have You Learned in the Class?
    • Students shared their newfound skills, such as configuring Raspberry Pi devices, writing Python programs, and integrating hardware with software.
    • Many emphasized how the hands-on projects deepened their understanding of programming and hardware interaction.
  2. What Was the Most Challenging Aspect, and What Could Be Improved?
    • Challenges included debugging complex code, understanding hardware limitations, and managing time during project development.
    • Suggestions for improvement included more guided tutorials, additional practice sessions, and collaborative troubleshooting workshops.

These discussions highlighted the growth and resilience students developed while navigating challenges and celebrated their achievements in mastering new skills.


This semester’s journey through BTE/DRE courses has been a testament to the power of learning by doing. From developing Python games to building digital solutions with Raspberry Pi, I hope you have not only gained technical expertise but also cultivated problem-solving skills and design thinking.

As we wrapped up the class, I hope you felt a sense of accomplishment and inspiration, ready to apply your skills to future endeavors. The combination of project-based learning and reflective discussions has provided a strong foundation for continued growth in programming and hardware development.

I look forward to seeing how you, the budding innovators =) will use your skills to create impactful solutions in the years to come.

BTE1522 DRE2323 – Week 13 Project Progress Presentation

This week at the UMPSA STEM Lab, it’s a celebration weeks of effort, creativity, and learning as students from BTE1522 and DRE2323 showcased their project progress during their Week 13 presentations :), very well done.

The project list for this semester

This session marked a critical checkpoint in the Project-Based Learning (PBL) approach, where students demonstrated their understanding of concepts learned from Week 1 to Week 8.

The Essence of Project-Based Learning

Project-Based Learning is more than just a teaching method—it’s a transformative approach to mastering coding and physical computing. Through hands-on activities, students delve into real-world challenges, integrating knowledge from various topics and applying it to create meaningful projects.

In the case of BTE1522 and DRE2323, this journey began with developing Python-based games and culminated in complex physical computing projects using Raspberry Pi and microcontrollers like the Pi Pico. By “learning through doing,” students gained practical skills in coding, troubleshooting, debugging, and tinkering—key competencies for future engineers and technologists.

The Week 13 Presentations

Students from both classes, DRE2213 and BTE1522 built on their foundational Python programming knowledge by creating interactive games in the early weeks, such as slider games and arcade-style challenges. These games taught them the core principles of programming, including variables, loops, and control structures.

For their projects, they transitioned to physical computing, integrating Raspberry Pi with sensors and hardware to develop innovative systems. Projects included:

  1. Environmental Monitoring Systems
    • Combining Python with IoT sensors for real-time data tracking.
  2. Interactive Learning Devices
    • Using Raspberry Pi to create tools that gamify education.

They then focused on blending Python programming with hardware integration. Their projects reflected their grasp of advanced concepts like data acquisition, cloud integration, and system automation. Some notable projects included:

  1. Weather Journaling with OLED Displays
    • Utilizing Python and I2C sensors for environmental data visualization.
  2. Smart Agriculture Solutions
    • Leveraging Raspberry Pi for precision farming techniques, such as soil moisture monitoring and climate control.

Learning Through Challenges

The journey from Week 9 to Week 13 was filled with challenges that tested the students’ knowledge and resilience. Key lessons included:

  1. Troubleshooting and Debugging
    • Students learned that errors are part of the process. Debugging their code helped them understand the nuances of programming.
  2. Tinkering with Hardware
    • Physical computing required students to experiment with hardware configurations, teaching them patience and adaptability.
  3. Collaboration and Problem-Solving
    • Teamwork was essential, as students shared insights and supported one another in overcoming technical hurdles.

Why Project-Based Learning Works

Coding is best learned by doing, and PBL offers a structured yet flexible framework to foster active learning. By working on tangible projects, students not only consolidate theoretical knowledge but also develop critical thinking, creativity, and problem-solving skills.

Looking Ahead

The Week 13 presentations are not the end but a milestone in the students’ journey. The feedback received during the session will guide them as they refine their projects in the coming weeks. The final showcase will demonstrate not just their technical expertise but also their growth as innovators and problem solvers.

Well done everyone!

 

Raspberry Pi Programming 2024/11 – SHAH Pekan

*UMPSA STEM Lab Raspberry Pi Programming Synopsis can be found here.

In the Raspberry Pi IoT session, 30 students from SHAH Pekan were introduced to the concept of the Internet of Things (IoT) using Raspberry Pi on the UMP STEM Cube, a pico-satellite learning kit specifically designed to facilitate engineering learning.

The content covered basic digital input/output operations on onboard LEDs, as well as topics such as dashboard design using gyro meter and BMU280 sensor data, including collecting and storing data in a cloud database. Participants learned to interface sensors with Raspberry Pi boards and develop IoT applications for real-world scenarios. The session provided students with valuable insights into IoT technology and its applications in various domains.

A special appreciation is extended to Cikgu Syakir and Cikgu Rita from SHAH Pekan for coordination in facilitating communication between the participants and the UMPSA STEM Lab :).

Dec 19th

IMG_0884

IMG_0884