1. Introduction
Optical Camera Communication (OCC) is a subset topic of Optical Wireless Communications (OWC), which involves the optical spectrum to transmit and receive signals. OCC is the development technology of visible light communications (VLC), which is performed using LEDs and photodiodes as transmitters and receivers. Instead of using photodiodes as receivers, OCC uses a camera as the receiver, while on the transmitter, various devices can be used, such as LEDs or even digital signage [
1].
Several sophisticated technologies have been developed and technological definitions have been found in recent years. The Internet of Things (IoT) is one of the trending terms that has diverse meanings with one goal, defining a paradigm where things are interconnected, capable of communicating with one another, and can be adjusted over time for users’ needs as well as work autonomously to exchange data between entities [
2]. The idea of IoT can be traced back to 2005 when the meaning of IoT was to integrate technology into human’s everyday human life [
3]. Previously, radio-frequency identification (RFID) was the only technology that was considered to be a communication medium that was able to perform IoT [
4]. However, IoT can consist of various sensor devices and communication interfaces deployed in local or even separated areas currently. The gained data are processed using advanced algorithms to obtain deep insights and information depending on the target of the IoT system [
5]. In addition, from these diverse data, a better understanding and insights can be gained for some actions or prevention that can be applied to the IoT system installed area [
6]. Furthermore, with the advancement of recent technologies, IoT systems are currently supported by several sophisticated technologies such as edge computing that enables IoT systems to generate decisions and interact between sensor devices in real-time processing [
7].
Concurrently, IoT has been implemented in various fields, including the industrial field known as industrial IoT [
2]. The IoT system is adjusted based on the industry’s characteristics. For example, in terms of sensing devices used, agricultural industries use different sensing devices than the basis of industries used in construction industries [
5]. In agriculture scenarios, the sensor devices used are those that function to monitor crops and plants, such as light sensors, temperature sensors, and soil moisture sensors [
8]. In the construction industry, most IoT data are collected from vibration sensing systems, which include various sensor devices such as a triaxial gyroscope, triaxial magnetometer, and triaxial accelerometer [
9]. Another implementation is in security systems, where the IoT is used to enhance security in homes or public facilities. Early implementations used cameras as sensing devices and connected them over a local area network (LAN) system [
6]. However, surveillance of an indoor building or an outdoor environment can be performed not only over a LAN network but also from remote places due to the increasing ability of internet technology to process the data [
7]. For example, in smart home applications, a camera installed inside the house can be tracked through the internet server or cloud from smartphones or tablets [
3]. In the medical field, or the Internet of Medical Things (IoMT), more efficient and faster processes in healthcare systems are urgently needed. In addition, increasing health costs from year to year are also transforming into other problems. Therefore, technology development and its use play a significant role in improving the healthcare system [
10].
Despite implementations in various fields, the IoT has its base architecture, although it is yet to be standardized. However, the base architecture is derived based on the process similarity among the IoT system implementations [
4]. Considering the existing systems, IoT architecture can be divided into five main layers: sensing, communication, cloud, management, and applications layers [
11]. As aforementioned, knowledge or data is gained through sensing devices. Therefore, the sensing layer can be regarded as the first layer in the IoT architecture. This layer consists of sensor networks and embedded technologies, also considered the slowest layer compared to other layers [
12]. Above the sensing layer is the communication layer, and its task is to bridge and manage the communication between the sensing and upper layers. These layers include routers, switches, and other similar devices and use several protocols such as CoAP [
13] and Message Queueing Telemetry Transportation (MQTT) [
14]. The cloud layer is the one-level layer above the communication layer and as the name implies, the cloud layer utilizes cloud and edge computing technologies. In the cloud layer, data are processed and analyzed to obtain more insights, and information and decision-making can be performed [
15]. Cloud technologies are currently equipped with artificial intelligence technologies to enable autonomous decision-making [
16]. The management layer is responsible for monitoring other layers so that actions can be taken if faults or errors occur on those other layers. Finally, the application layer can interact with end-users directly. It provides applications and services for end-users so that all processes in the IoT can be operated within human control [
11]. As illustrated in
Figure 1, this architecture forms the foundation for diverse IoT implementations, providing a flexible yet structured framework for various IoT applications.
As aforementioned, one of the IoT applications is in the medical field. Notably, there are many specialized fields in IoMT. However, one of the trending research projects regarding IoMT is the development of a Wireless Body Area Network (WBAN) [
17]. WBAN aims to provide continuous and automated monitoring of patients as well as insights and knowledge that can be concluded by the medical staff; thereby, responses and actions can be performed more rapidly. Furthermore, WBAN is designed to obtain various data, such as temperature, oxygen saturation, and tension [
12], directly from the patient’s body, making the health diagnosis more accurate [
18]. In indoor scenarios such as medical centers or even hospitals, WBAN can be integrated with local or edge server systems to create an IoMT system that is robust and sustainable in providing data. Currently, RF-based signal communication technologies such as Bluetooth, Ultra-Wideband (UWB), and ZigBee are still widely used to send data from sensing devices in the body area to the upper layer of the IoMT system [
19].
Figure 2 shows the illustration of WBAN, which presents a visual representation of how WBAN functions within the IoMT framework.
Despite the rising usage of RF-based IoT in medical applications, it has several disadvantages. Since the sensing devices are attached to the body, the communication device should also be located near the body. RF-based communication devices are commonly known to be harmful to the body in long-term usage [
20]. This would be unhealthy for anyone, especially a patient with severe illnesses. Moreover, RF-based communication is prone to jamming and intrusion [
21], resulting in unsafe users, which in advanced cases can lead to malicious threats or other cyber-attacks [
22].
However, despite its potential as a new communication medium, OCC has several drawbacks compared to other communication technologies. OCC is dependent on camera specifications, with commercial cameras mostly having low frame-per-second (fps) rates. This problem can be overcome by using a more sophisticated camera. Additionally, in a non-line-of-sight (NLOS) situation, the communication performance deteriorates, unlike other communication modes. OCC requires high visibility on the transmitter. This issue can be addressed by using several cameras in an environment, improving the OCC system’s performance. While the transmitter may not be visible to one receiver, it might be visible to other cameras.
Therefore, in this study, we propose OCC as the WBAN communication method in the IoMT scenario. In our context, aligned with the aforementioned fact, security cameras such as CCTV are commonly installed in many buildings. Hence, OCC-based IoT can be implemented locally for those buildings. Using multiple cameras, every time a patient equipped with sensing devices connected to the LED transmitter passes through a CCTV camera or similar device, the LED matrix transmitter can be detected by those cameras and the data can be transmitted from the LED matrix to the camera. In this work, the use of the YOLO [
14] object detection task is also proposed to detect the LED matrix for multiple user (patient) scenarios. Therefore, real-time and continuous monitoring of the patient using OCC is possible since installed cameras are available on every corner of the building and even in the building hallway. Therefore, the overall contributions of this study are as follows:
An IoT system scheme using OCC is provided, taking advantage of the CCTV camera system that is common in every building in present days, especially in health centers or hospitals, to perform continuous and real-time patient health monitoring;
Implementation of deep learning-based OCC on multiple patients. In the proposed scheme, object detection is used to receive data from multiple patients represented by the use of several LED matrices;
Indoor real-time patient relative location based on camera locations. Using several cameras installed in the building for OCC, patient location can be determined.
The subsequent sections of this study are organized as follows:
Section 2 highlights recent work on OCC in IoT systems,
Section 3 explains the design of an OCC-based IoMT system,
Section 4 details the experimental conduction and results analysis, and
Section 5 concludes.
2. Literature Review
In the context of OCC within the IoT, cameras play a crucial role in facilitating efficient data collection from a variety of devices and sensors. This OCC system is responsible for processing data received from multiple sources, and then transmitting it to a gateway via wired or wireless networks. Once the data arrives at the gateway, it is then routed to a backhaul network, such as 5G or satellite, and ultimately stored on a server or in the cloud, providing support for various IoT applications [
23]. Several studies on OCC in the field of IoT include:
Ref. [
24] proposed a new approach for OCC using side-emitting fiber transmitters and accomplished an increased communication distance two times that of previous research [
25,
26]. The proposed OCC-fiber link successfully fulfills the Fuel and Missions Calculator (FEC), Version 3.8 limit for Bit Error Rate (BER)
on distances of 35 m (BER = 3.35 ·
) and 40 m (BER = 1.13 ·
) using fiber with diameters of 2 and 3 mm, respectively. The results show that the frequencies using on-off keying are 3.54 and 5.28 kHz each, which creates potential applications in IoT-based indoor and outdoor environments where OCC uses distributed fiber. However, there are some weaknesses related to the fiber, which has a limited radiation angle coverage compared with a conventional light transmitter. This possibly results in a more limited signal recipient zone, a restricted coverage area that can be reached by the OCC system. Furthermore, fiber usage limits flexibility, and it is possible to increase the implementation cost.
Another study proposed a hybrid wireless communication system [
27] that combines OWC with direct modulation on LED chips. This system is designed for multipurpose indoor IoT using a single LED as a transmitter and a combination of photodiodes with the camera as the receiver. The experiment shows that the system can reach a throughput of up to 100 Mb/s for visible light communication (VLC) link and data transmission without fault for the OCC link. The result is reached using direct modulation with various amplitude levels, and optimization of the received optical power can significantly enhance the performance of the link. This research also explored various LED colors and sophisticated modulation techniques (direct modulation). Based on the results of the experiments conducted in this research, the obtained results pave the way for implementation in real-world IoT scenarios.
Another hybrid research [
28] proposed the use of OCC in IoT systems to overcome RF spectrum density. This work proposed an IoT application with an 8 × 8 LED matrix to transmit temperature and humidity data through 2 packets/s with a packet error rate (PER) of less than 3% over a 2-m distance. The main problem of this implementation is the noise and interference possibility due to LED usage with different bandwidths from the VLC link. The results of the development of the SIMO hybrid VLC system can provide versatile indoor services for IoT. This is because the system can address RF spectrum density issues and successfully reduce interference and noise in the VLC link with an 8 × 8 LED matrix. In Ref. [
29], a similar method, which is hybrid SIMO for optical IoT system, uses an LED-based transmitter and photodetector and Image Sensors (IS) based receiver for high and low data rate transmission simultaneously. Photodetector-based VLC is used to download large-sized data, internet browsing, and online streaming, whereas IS-based VLC is used to transmit short messages, identification information, and signal control. This hybrid modulation scheme with Rb-High up to 60 Mb/s and Rb-Low up to 5 kb/s is intended to increase the performance, and the experimental results are as desired. This scheme can be developed by adding a color LED for lighting, equalization technique implementation, and different modulation formats to increase the data reception success rate and BER performance. This study provides solutions for multipurpose indoor optical IoT regardless of the device used.
Furthermore, Ref. [
30] developed efficient OCC for IoT applications to overcome the distance limit and low data rate on existing OCC implementations. In this work, the proposed OCC used an 8 × 8 LED matrix to increase the operational distance up to 2 m and to reduce BER, which is suitable for use in an indoor industrial environment. The main purpose of this research is to obtain an efficient classification pattern and widen the communication distance with a data rate of more than 256 bps. Based on the results, this study achieves efficient classification of 2D signal patterns on LED matrices and can detect the pattern from a far distance. However, there are several weaknesses, such as performance limitations on further distance and higher data rates. In addition, factors affect system performance, especially camera settings, and characteristics such as resolution and brightness, influencing pattern recognition and communication errors.
IoMT, as a subcategory of IoT, is still relatively unexplored in the healthcare context, particularly in the use of OCC. However, recent studies in the field of OCC for eHealth [
20,
31,
32] have developed monitoring systems that enable patient surveillance in various settings such as homes, hospitals, indoor and outdoor areas, intensive care units, ambulances, airplanes, ships, and ICUs. OCC is applied to measure photoplethysmography (PPG) signals, analyze emotions, determine blood oxygen levels [
32], and assist in patient diagnosis [
20]. In OCC-based healthcare systems, data are collected from various LEDs worn by patients. This data collection is conducted securely and reliably without causing interference, ensuring high quality of service (QoS) [
33]. OCC offers several advantages that can benefit the healthcare sector:
OCC offers a wide spectrum, low cost, and lower system costs [
20]. It also has no electromagnetic interference (EMI), which can lead to failures in medical devices [
34];
Visible light waves have no adverse effects on human health [
35], and non-flicker technology in light waves can be used with modulation frequencies exceeding 200 Hz without posing a threat to human eyes, unlike the potential negative effects of RF waves on human health [
36];
The increased bandwidth in current communication systems often requires the use of higher-frequency waves, which can negatively impact human health [
36];
RF systems use electromagnetic waves to transmit information, which is potentially harmful to human health [
20,
35];
OCC provides a readily deployable LiFi solution using a smartphone camera [
37] for communication, positioning, indoor navigation, and augmented reality without the need for additional equipment such as photodiodes [
38].
Based on various studies in the field of IoT, OCC technology exhibits significant potential as a reliable and versatile application for both outdoor and indoor environments. This enables effective and efficient implementation across IoT scenarios. Although the use of OCC in IoMT is still underexplored, there has been a significant increase in research within the eHealth context. To enhance continuous and real-time health monitoring of patients, particularly through remote monitoring, we developed an IoMT system scheme focused on indoor scenarios. This system integrates OCC-based WBAN using CCTV cameras, which are widely available in various buildings, especially in healthcare facilities or hospitals. We also considered important factors such as the capacity to serve multiple patients, system coverage, and the ability to monitor patients’ positions or locations simultaneously in different places, all of which are strengthened by the use of artificial intelligence.
3. Proposed OCC IoMT Platform (Design and Implementation)
The IoMT is the practical application of IoT devices combined with medical technology for healthcare, facilitating the transfer of data between devices and health applications. The implementation of OCC within IoMT involves the use of light signals and camera sensors to create a secure and fast data communication system. In practice, OCC enables remote patient monitoring and real-time transmission of medical data to healthcare providers.
Figure 3 shows a block diagram of the IoMT OCC platform.
Figure 3 shows the block diagram of the IoMT OCC form, and the process begins when the patient activates the health device. This process involves collecting data from oxygen, heart rate, and temperature sensors, which are vital indicators in health monitoring and are equipped with a panic button. A data encoder then encrypts the data collected by these sensors. This encrypted data is then transmitted through a matrix of LEDs using the On-Off Keying (OOK) modulation technique. Each LED has its own identity and acts as an anchor in data communication, allowing the identification of specific LED locations and ensuring the accuracy of the received data source.
The diagram also shows the process of detecting missing bits and decoding data, demonstrating an error correction system that ensures data integrity. The system also uses a camera to receive the encrypted light signals. Once the data is decoded, the system reassembles the data that may be divided into several packets, and then sends it to the edge server. This server acts as a bridge between IoT devices and larger cloud infrastructure, performing initial data processing, reducing communication latency, and enabling rapid response in emergencies.
Finally, the edge server sends the data to the IoMT platform, which can be accessed by healthcare providers. This provides the possibility for real-time patient monitoring, which is crucial for proactive and responsive healthcare.
3.1. Transmitter
The transmitter section utilizes an 8 × 8 LED matrix with OOK modulation. During the OOK modulation process in OCC, data transmission is managed through LEDs, altering the light intensity between two states: the LED is on to represent the “1” bit and off for the “0” bit. In operation, the 8 × 8 LED matrix consistently generates light patterns based on the sequence of bits received, which are then captured by an optical camera serving as the receiver. Algorithm 1 outlines OOK algorithm steps for mapping data received from each sensor onto the 8 × 8 LED matrix, which is subsequently modulated. The initial phase involves configuring pin parameters for the pulse oximeter sensor and LED matrix 8 × 8 and initializing serial communication. In this research, we utilized the MAX30102 sensor as the pulse oximeter sensor and the LED matrix is configured through Neopixel library. Moreover, anchor, LED ID, and sequence number are also initialized before transmitting the data. The program then enters a continuous main loop, reading oxygen saturation, heart rate, and temperature values from the MAX30102 sensor. In addition, it monitors the status of the panic button, detecting if it has been pressed.
Algorithm 1 Pseudocode—“Transmitter” |
- 1:
Define pins and settings for LED matrix 8 × 8 and a pulse oximeter sensor. - 2:
Initialize LED matrix 8 × 8, Serial communication, and pulse oximeter sensor. - 3:
Initialize anchor, LED ID, and sequence number to each patient. - 4:
function ReadOS, ReadHT, ReadT, - 5:
Read oxygen saturation, heart rate and temperature value from pulse oximeter sensor - 6:
return oxygen saturation, heart rate and temperature - 7:
end function - 8:
function DectoBin(b) - 9:
Convert integer b to binary string - 10:
return Convert - 11:
end function - 12:
Main Loop: - 13:
while true do - 14:
if Serial available then - 15:
Read data until a newline character - 16:
end if - 17:
Clear LED matrix 8 × 8 and define array a with preset values for pixel indices - 18:
Read status of the panic button - 19:
Read oxygen saturation, heart rate, and temperature data from respective sensors - 20:
Convert the status of the panic button, oxygen saturation values, heart rate values, and temperature values to binary strings - 21:
for each bit in binary strings do - 22:
if bit is ‘1’ then - 23:
Update array a with corresponding pixel indices - 24:
end if - 25:
end for - 26:
Set LED matrix 8 × 8 status ON/OFF based on updated array a - 27:
Show updated pixel status ON/OFF on LED matrix 8 × 8 - 28:
end while
|
Subsequently, data from the MAX30102 sensor and the panic button status are transformed into a binary format. For each value of oxygen saturation, heart rate, temperature, and status of the panic button, a corresponding binary representation is created. Based on these binary representations, the “a” array is updated to determine which pixels in the LED matrix will switch states (on/off). Thus, each index corresponds to one pixel on the LED matrix. Following this modification, the on/off states of the LED matrix pixels are aligned with the refreshed values in the array. Furthermore, as initialized in the beginning, the sequence number (SN) along with an anchor and LED ID is assigned to the “a” array. Each process is repeated in the main loop. This process encompasses additional procedures for reading sensor values, including the panic button state, and functions for converting integer values into binary strings. The comprehensive pseudocode delineates the procedures for accessing, processing, and visualizing data on the NeoPixel matrix based on the sensor inputs and panic button state, thereby providing a unique identifier for each connected patient.
3.2. Receiver
In OCC, the receiver is a crucial element that converts light signals from LEDs into digital data. Receivers typically use camera sensors such as rolling or global shutters found in smartphones, webcams, or CCTV. This study employed a CCTV camera to monitor oxygen saturation, heart rate, temperature, and status of the panic button, and to detect the position/location of several patients based on user SN and ID camera in an indoor environment. Algorithm 2 shows the receiver’s algorithm of pseudocode for the receiver in the OCC. This pseudocode is designed to detect and process patient health information using cameras and object recognition technology based on data captured from LED matrix signals.
Algorithm 2 Pseudocode—“Receiver” |
- 1:
Initialization: - 2:
Create CSRT trackers and MultiTracker - 3:
Initialize video capture and YOLOv8 detector - 4:
Define API endpoint and key for data transmission - 5:
function ReadLEDs(select_box) - 6:
Process select_box coordinates - 7:
Extract and preprocess LED frame - 8:
Detect contours and calculate LED positions - 9:
Decode information (oxygen saturation, heart rate, temperature, status of the panic button) - 10:
return Decoded information and thresholded image - 11:
end function - 12:
function ProcessSelectBox(select_box) - 13:
Adjust and convert select_box coordinates - 14:
return Updated select_box - 15:
end function - 16:
function ProcessSelectBoxes(select_boxes) - 17:
for each box in select_boxes do - 18:
Process each select_box - 19:
end for - 20:
return List of processed select_boxes - 21:
end function - 22:
function SendData(channel_id, data, cameraID) - 23:
Prepare and send data to API - 24:
Handle response and errors - 25:
end function - 26:
Main Loop: - 27:
while Video Capture is Active do - 28:
Read frame from video capture - 29:
if First Frame then - 30:
Detect objects and initialize trackers - 31:
end if - 32:
if Re-initialization Condition Met then - 33:
Re-initialize trackers - 34:
end if - 35:
Update trackers and process LED information - 36:
Display results and periodically send data to API - 37:
if Termination Condition (ESC or ‘q’ Key Press) then - 38:
Terminate and close windows - 39:
end if - 40:
end while
|
This system employs the CSRT (Channel and Spatial Reliability Tracker) algorithm for real-time object tracking and the YOLOv8 (You Only Look Once Version 8) detector for identifying specific objects (LED matrix 8 × 8) in the video. The algorithm aims to read and analyze LED signals that indicate health data such as oxygen saturation, heart rate, body temperature, and the status of the panic button, and to detect the position/location of several patients based on user SN and ID camera. This information is then processed and sent to an API for further storage and analysis. The main functions of this pseudocode include initializing tracking and detection, processing select boxes that mark detected object areas, processing LED signals for health data extraction, and sending these data to the API. This system operates in a main loop, continuously reading and processing video frames, and periodically sending health data to the API, ultimately offering significant potential for remote health monitoring and telemedicine applications, which provide real-time data crucial for monitoring and clinical decision-making.
3.3. YOLOv8 Object Detection
YOLO [
39] is an artificially intelligent model that employs object detection tasks. Object detection is a computer vision task in which the position and location of objects in 2D images are predicted using a certain algorithm, which is identified through class representations such as animals, persons, cars, and traffic signs. YOLO adopts one-stage detection [
40], signifying that the bounding box and object identification are performed directly in a singular feed-forward fully convolutional network. Meanwhile, two-stage detection [
41] divides the detection process into two phases: the first involves the proposal of object candidates through the region of interest (RoI), and the second phase conducts the object identification of the proposed RoI candidates. The two-stage approach is considered to result in more accurate detection than the one-stage approach. However, due to the pre-processing in the first stage of the two-stage technique, this approach is also considered slower than the latter approach. Hence, a one-stage method is more convenient for use in mobile scenarios. YOLO has had several versions since its release in 2016. At the time of writing, YOLO has been updated to Version 8 (YOLOv8). In this study, YOLOv8 is employed as the object detection model. YOLOv8 proposes several new techniques compared with previous versions. Anchor-free detection is introduced to reduce the number of squares that need to be predicted by directly calculating the position of the object’s centroid. Mosaic data enhancement is also proposed by merging several items into one entity and using it as model input. This technique results in less time required with training for a certain amount of data.
Figure 4 shows the YOLOv8 object detection architecture, which comprises three main layers: the backbone, neck, and head (prediction) [
42]. The backbone serves as the initial processing layer for image data, incorporating various convolutional neural networks. Notably, YOLOv8 uses pre-trained models such as DarkNet and ResNet as part of its backbone. The neck layer acts as a bridge between the backbone and the head, featuring concatenation and sample layers, along with regular layers such as C2f and convolutional layers in the YOLO context. The head section incorporates three detection modules, and the final output is constructed by aggregating the results from these three detection modules. YOLOv8 has several size variants: YOLOv8n, YOLOv8s, YOLOv8m, YOLOv8l, and YOLOv8x. Although a larger version provides more depth image pre-processing and better results, this study selected and fine-tuned YOLOv8s for mobility and lightweight purposes to fulfill the requirements of the proposed IoMT system.
3.4. OCC-IoMT Platform
The OCC-IoMT platform facilitates the transmission of health data from IoMT devices through optical signals to a camera, where the data are then analyzed and stored in the cloud, easing access and data management. Patients can register and create a “channel” that allows them to organize data, perform analysis, and provide intuitive data visualization, thus supporting real-time monitoring of patient health conditions. Based on the application architecture of the OCC-IoMT platform, as depicted in
Figure 5, the transmitter part, the MAX30102 sensor, collects vital patient data such as oxygen saturation, heart rate, and body temperature. as well as the panic button value. These data are processed and converted into signals suitable for transmission through an LED matrix. This process uses OOK modulation, in which the data is encoded into light patterns that can be transmitted. On the receiver side, the edge server acts as a point of collection and data processing. This server receives the light signals captured through a camera or optical sensor and converts these signals back into digital data. Subsequently, the processed data are sent to the backend system via a REST API built using CodeIgniter. This API manages data interaction between the edge server and the main database. The data are then stored in a MariaDB database. On the client side, a web application enables patients to access data through a browser. The web server, running on Nginx and Apache, handles requests and responses between patients and the server. CodeIgniter is also used to manage data interaction between the web server and the database.
6. Conclusions
The IoMT is a promising technology that can speed up the process of medical activities and leverage its quality. Thus, this study proposes OCC in the IoMT system. Unlike common communication methods, OCC employs optical light to transmit data. In OCC, the transmitters are devices that emit light, including an LED array and a camera as the receiver. OCC has several advantages over other communications, such as radio frequency, which can be used in health monitoring. Therefore, a system that integrates OCC into the IoMT system was proposed.
In the proposed IoMT system, OCC transmits data from body sensors through several camera receivers to the cloud server. This system also takes advantage of security cameras commonly used in the last decades in many buildings to track the indoor location of patients. The data obtained from the OCC camera are then forwarded to the system and processed on the server, which is then shown on the client’s interface through a website. The data can serve as a reference for medical staff to take further action. Furthermore, the location of the patient can be tracked in real-time.
Consequently, a simulation to obtain the patient’s location based on the camera in an indoor environment was conducted and multiple patients’ OCC systems to obtain data from multiple patients using multiple LED arrays through the YOLOv8 object detection model were simulated. The developed IoMT system can receive data in parallel from the two transmitters. This system also tracked the patient’s location in real time through the cameras. Based on the simulation conducted, OCC can use the IoMT system to track patients’ real-time health conditions.
OCC has great potential in the future as a method for communication systems, especially in the IoT fields. Future studies should focus on a more comprehensive study on OCC in IoMT systems by integrating OCC for IoMT in larger-scale healthcare systems, which covers integration with other systems such as traffic and emergency systems. Furthermore, the potential of OCC and its implementation in other IoT systems, including industrial IoT, IoT in home automation, and smart agriculture, requires further research.