Overview
The interview with medical caregivers indicated that elders have difficulty
bending over to check their feet, which hinders their willingness to examine the
wound and increases the risk of Diabetic Foot Ulcer. To address this issue, we
designed a wound detection machine specifically for seniors who live without
close family support and often neglect foot care. By making foot monitoring
simple and accessible, our device empowers them to detect problems earlier and
protect their health.
In particular, we integrated a cloud-based mechanism. Since elders may not be
able to interpret their own foot condition, uploading images to the cloud
allows family members or doctors to view them remotely, providing timely support
and reducing the risk of overlooked injuries.
The operation process is as following:
- Since the wound detection machine is online controlled by OpenCV, users should login in the control webpage to command machine.
- After users put their foot on the machine, users could ask machine to take picture by clicking the “shot” button in the control webpage. The captured photos will be immediately displayed on the control webpage.
- If users already set up the cloud storage space, the picture will be uploaded and saved automatically.
The composition of wound detection machine
The chamber of wound detection machine is mainly composed of acrylic, which is a
pressure-resistant and relatively safe material. The acrylic panel is
transparent; thus, the light can penetrate naturally. On the back of the
machine, we designed an opening that allows the Raspberry Pi to connect to a plug
extending outward.
The heart of wound detection machine is a Raspberry Pi, which is a single-board
computer that can run Linux-based operating systems. Raspberry Pi provides the
crucial ability to access and integrate with various platforms—such as websites,
cloud API, and AI operation environments—making it a versatile control hub. We
apply Raspberry Pi to control the USB camera, which has faster autofocusing
capability. In addition, the multiple USB slots of Raspberry Pi allows extension
in the future.
The USB camera we choose is equipped with a Sony IMX179 CMOS sensor, capable of
delivering up to 3264 × 2448-pixel resolution. It integrates an autofocus system
for maintaining precise focus across varying object distances, and supports
automatic exposure control (AEC), automatic gain control (AGC), and automatic
exposure brightness (AEB) for optimal image quality under different lighting
conditions.
The control program of wound detection machine
- Software selection:
In the preliminary test, we employ an entry-level USB camera which primarily supports Fswebcam for rapid protocoling. However, the setup of this camera relied heavily on default UVC (USB Video Class) parameters, limiting our ability to optimize image quality. To overcome these issues, we upgraded to a higher-performance camera which primarily supports OpenCV, a comprehensive computer vision library capable of handling more complex image processing tasks. OpenCV not only enables precise adjustment of exposure and gain but also provides Boolean error codes (True/False) facilitate debugging and improve overall efficiency.OpenCV Fswebcam Magnitude Larger package Lightweight framework Error code True/False Stdout/Stderr Universality Wide Narrow -
User interface
To provide a rapid and simplified user interface to elders, we constructed the control webpage by Flask, which is popular and lightweight for web application. The Waitress WSGI server was applied to ensure that our Flask-based website runs continuously as a persistent service. In the control webpage, only a box for user to log in and a “shot” button are shown. When users press the button, the program would send command to the Raspberry Pi to activate the camera in wound detection machine. The image taken by camera will be instantly uploaded back to the control webpage by Raspberry Pi. If the users log in and specify the storage space, images will be saved. Once the image is saved, a notification will be sent to the designated account. - Saving images
The following Python packages were used for saving images to the cloud:- google-api-python-client: This is Google's official Python client library for interacting with various Google APIs, such as Google Drive, Gmail, and Google Sheets.
- google-auth-httplib2 and google-auth-oauthlib: Both packages are related to Google Authentication. They handle the OAuth 2.0 process, allowing the application to securely access a user's Google Account information.
- os and drive_uploader: os is a built-in Python module for interacting with the operating system, such as handling file paths and environment variables. drive_uploader is a custom module in the project, used to implement the upload function to Google Drive.
- google.auth.transport.requests : a submodule of the Google Authentication package that handles HTTP requests.
- google.oauth2.credentials: Used to store and manage OAuth 2.0 credentials.
- googleapiclient.discovery: Used for dynamic discovery of Google API services.
- googleapiclient.http: Used for handling HTTP requests and file uploads.
The following is the data structure after entering the cloud:
-
Notification
To achieve the goal of remote monitoring, we designed a system that automatically sends a notification to the default mail address whenever new photos are uploaded to the cloud. We integrated the gmail_sender module to accomplish this function. When the user fills in an email address in the input box, the main program calls the gmail_sender module, which then connects to the Gmail SMTP server to send a notification to the user’s inbox. Once the notification is successfully sent, a confirmation message is displayed on the webpage.
Video of the finished device
Future Vision
For our detection device, our goal is to collaborate with home healthcare systems to establish a proactive wound-monitoring network. Through such collaboration, our device could help caregivers identify unnoticed wounds early and prevent them from worsening more effectively, ultimately reducing complications in diabetic patients.
Reference
- Pallets Projects. (n.d.). The Python micro framework for building web applications. GitHub. Retrieved September 23, 2025, from https://github.com/pallets/flask