Signalverarbeitung mit MATLAB und Künstlicher Intelligenz: Unterschied zwischen den Versionen
(53 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 14: | Zeile 14: | ||
|} | |} | ||
{| | {| | ||
== | ==Abstract== | ||
In modern engineering, signal processing forms a fundamental basis for analyzing and enhancing data from various sources. With the coming of artificial intelligence (AI), traditional signal processing techniques can be even replaced by AI methods capable of addressing increasingly complex tasks. This article presents an integrative project that applies MATLAB as the core platform for signal processing while incorporating AI techniques. The work includes a comprehensive study of image processing tasks, such as object detection and classification, and provides a comparative evaluation between classical algorithms and AI-based approaches. The methodology is rigorously documented through scientific research, systematic experimentation, and the use of visual aids like mind maps and annotated results. | |||
[[Datei:Signal Processing with MATLAB and Artificial Intelligence MindMap NNew.pdf|500px|mini|Fig. 2: Project MindMap]] | |||
== Introduction == | |||
Signal processing has long been a basis in the analysis and manipulation of data in various domains such as telecommunications, radar, audio processing, and imaging. Signal processing has traditionally focused on analyzing, filtering, and interpreting signals in both the time and frequency domains. With the integration of AI, especially deep learning, the possibilities expand to include noise reduction and more. It is essential in many modern applications such as communications, audio and image processing, biomedical signal analysis, and control systems. | |||
MATLAB’s extensive toolboxes for both digital signal processing (DSP) and machine learning allow for the exploration of new approaches that can potentially offer improved performance and robustness in handling noisy or complex signals. | |||
=== Time planning/project plan === | |||
The project schedule was represented using Gantt charts. Figure 3 and 4 shows the original plan. Everything I planned on working on was showned as well on my mind map in Fig. 2 | |||
=== ''Signal Processing Fundamentals'' === | === ''Signal Processing Fundamentals'' === | ||
Zeile 54: | Zeile 64: | ||
cutoff frequency: The cutoff frequency, or cutoff, determines where the signal is cut off. If a signal contains frequencies that range from 500 Hz up to 8000 Hz and the cutoff frequency is set at 4000 Hz, frequencies above 4000 Hz are filtered, for example, in the case of low-pass filters. | cutoff frequency: The cutoff frequency, or cutoff, determines where the signal is cut off. If a signal contains frequencies that range from 500 Hz up to 8000 Hz and the cutoff frequency is set at 4000 Hz, frequencies above 4000 Hz are filtered, for example, in the case of low-pass filters. | ||
[[Datei:Gannt Chart SIgnal Processing .png|500px|mini|Fig. 3: Gannt Chart]] | |||
[[Datei:GanntChart2 Signal Processing.png|600px|mini|Fig. 4: Gannt Chart Continuation]] | |||
===Fast Fourier Transform (FFT) and Discrete Cosine Transform (DCT) === | |||
'''FFT: Extracting Frequency Components''' | '''FFT: Extracting Frequency Components''' | ||
Zeile 72: | Zeile 86: | ||
What It Does: | What It Does: | ||
Concentrates energy into a few low-frequency coefficients, which is beneficial for compression. | Concentrates energy into a few low-frequency coefficients, which is beneficial for compression. | ||
==== Frequency Over Time: Why Shift to Frequency Analysis? ==== | ==== Frequency Over Time: Why Shift to Frequency Analysis? ==== | ||
Zeile 83: | Zeile 95: | ||
Noise Reduction: Identify and remove noise that might not be apparent in the time domain. | Noise Reduction: Identify and remove noise that might not be apparent in the time domain. | ||
== Practical application examples == | |||
{| class="wikitable" | |||
|- | |||
! !! Task | |||
|- | |||
| 1 || [[Lane Keeping with AI]] | |||
|- | |||
| 2 || [[Image Classification with AI]] | |||
|- | |||
| 3 || [[Object Detection with AI]] | |||
|- | |||
| 4 || [[Image Segmentation with AI]] | |||
|- | |||
| 5 || [[Facial Recognition and Analysis with AI]] | |||
|- | |||
| 6 || [[Image Enhancement and Restoration with AI]] | |||
|- | |||
| 7 || [[Content-Based Image Retrieval (CBIR) with AI]] | |||
|- | |||
| 8 || [[Visual Relationship Detection with AI]] | |||
|- | |||
| 9 || [[Noise Reduction with AI]] | |||
|} | |||
==Literature Review== | |||
According to Oppenheim and Schafer (2009), in one of their definitions of signal processing, classical signal processing uses statistical and deterministic techniques like Fourier transforms, It encompasses the foundational techniques and concepts in the field, particularly those related to time and frequency analysis, and the development of filters and systems for manipulating signals. Despite their strength, these techniques frequently lack flexibility and necessitate manual parameter adjustment. | |||
On the other hand, deep learning models—particularly CNNs and YOLO networks—have proven to be more effective at interpreting signal and visual data. Transfer learning makes it possible to use previously learned information for domain-specific applications by utilizing frameworks such as ResNet or MobileNet. When used in control systems, reinforcement learning presents a viable approach to dynamic system optimization According to Sutton & Barto. | |||
MATLAB offers a platform for hybrid techniques by bridging both areas using toolboxes such as the Deep Learning Toolbox and Signal Processing Toolbox. The current research is based on this integration. | |||
==Methodology == | |||
==== Project Planning ==== | |||
* Created a mind map, Gannt Chart and project plan based on weekly goals and feedback from the supervisor. | |||
* Documented all tasks and progress on the university Wiki and SVN. | |||
==== Data Collection and Preprocessing ==== | |||
* Data for lane tracking and object detection collected from [[JetRacer: Autonomous Driving, Obstacle Detection and Avoidance using AI with MATLAB|JetRacer]] and Kaggle datasets for other projects. | |||
* Preprocessing steps included normalization, CSV-to-MAT conversion, and labeling via dedicated tools. | |||
==== AI Model Training ==== | |||
===== Lane Tracking: ===== | |||
* Trained CNNs using both from scratch training and transfer learning (ResNet50, MobileNetV3). | |||
* Evaluated performance using simulated driving outputs and training curves. | |||
===== Object Detection: ===== | |||
* Applied YOLO models for object classification (person, dog, cat). | |||
* Used Hough Transforms for circular detection. | |||
==== Implementation Tools ==== | |||
* MATLAB toolboxes used: Deep Learning Toolbox, Signal Processing Toolbox, Image Processing Toolbox. | |||
* Code and models were versioned using the school’s SVN repository. | |||
==Integrating AI in Signal Processing== | ==Integrating AI in Signal Processing== | ||
Zeile 97: | Zeile 167: | ||
'''Input Layer''' | '''Input Layer''' | ||
Function: | Function: | ||
Zeile 106: | Zeile 177: | ||
'''Convolutional Layers''' | '''Convolutional Layers''' | ||
Function: | Function: | ||
Zeile 114: | Zeile 186: | ||
'''Activation Functions''' | '''Activation Functions''' | ||
Purpose: | Purpose: | ||
Zeile 128: | Zeile 201: | ||
''' | ''' | ||
Pooling Layers''' | Pooling Layers''' | ||
Function: | Function: | ||
Zeile 147: | Zeile 221: | ||
'''Fully Connected Layers''' | '''Fully Connected Layers''' | ||
Function: | Function: | ||
Zeile 153: | Zeile 228: | ||
Mapping: | Mapping: | ||
Flatten the features extracted from convolutional or recurrent layers to make a decision based on all gathered information. | Flatten the features extracted from convolutional or recurrent layers to make a decision based on all gathered information. | ||
== Deep Learning Training: Mechanisms and Optimizers == | |||
[[Familiarization_with_MATLAB_®_AI_toolboxes|MATLAB® AI toolboxes:]] | |||
[[Practical_AI_examples|Practical AI EXamples]] | |||
'''Training Workflow''' | |||
Step 1: Initialization | |||
Assign random weights for all neurons in the network. | |||
Step 2: Forward Pass | |||
Input data is processed layer by layer. | |||
Input → Hidden Layers: | |||
Each hidden layer computes an output using its weights and activation functions. | |||
Hidden → Output Layer: | |||
The final layer produces predictions or classifications. | |||
Step 3: Loss Computation | |||
A loss function (e.g., cross-entropy for classification, mean-squared error for regression) measures the difference between predicted outputs and ground truth. | |||
=== Understanding Neural Network Training === | |||
==== How Backpropagation Works ==== | |||
Backpropagation is the mechanism that allows neural networks to learn from mistakes. It does this by calculating how much each weight contributed to the overall error, starting from the output and moving backwards through the network. This information helps adjust the network to make better predictions in the future. | |||
==== Adjusting Weights During Learning ==== | |||
Once errors are traced back, the model changes its internal weights. These adjustments depend on two main factors: | |||
The learning rate, which controls how big each change is. | |||
Momentum, which smooths out updates by considering the direction and speed of previous changes. | |||
'''Optimizers: How Learning Gets Smarter''' | |||
Stochastic Gradient Descent with Momentum (SGDM): | |||
This optimizer builds on regular gradient descent by adding a "memory" of past updates, which helps it move more confidently in the right direction and avoid zig-zagging. | |||
'''Adam (Adaptive Moment Estimation):''' | |||
A more advanced method that adjusts how much each weight is updated by tracking past gradients and adapting the learning rate. It’s especially good for large datasets or when gradients are inconsistent. | |||
Training in Steps: Epochs and Batches | |||
Epoch: | |||
One full cycle through the training dataset. The network sees every example once. | |||
Mini-Batches: | |||
Instead of waiting until the whole dataset is processed, data is split into small chunks. Each mini-batch updates the model, speeding up training and using computing resources more efficiently. | |||
'''During an Epoch:''' | |||
Every mini-batch contributes to learning. Over the course of an epoch, the model improves gradually. Tracking performance after each epoch helps identify trends and guide fine-tuning. | |||
'''Key Factors in the Learning Process''' | |||
Activation Functions (like ReLU or Sigmoid): | |||
These functions control how much signal moves from one layer to the next. They also introduce non-linearity, which is crucial for solving complex problems. | |||
'''Optimizers (Adam, SGDM, etc.):''' | |||
These are the engines that drive learning by using gradient information to tweak weights in the right direction. | |||
'''Learning Rate:''' | |||
This controls how quickly the model learns. A large value can lead to unstable learning, while a small one may make training very slow. | |||
'''Inside the Network: Weights, Biases, and Loss''' | |||
Weights and Biases: | |||
Each neuron processes inputs using weights (which scale the input) and biases (which shift the output). These are what the network adjusts to learn. | |||
'''Before Updating:''' | |||
The model calculates the difference between its prediction and the actual result. This "loss" value tells it how far off it was, and gradients are calculated based on this error. | |||
'''Backpropagation Again:''' | |||
These gradients travel backwards through the layers, guiding how weights and biases should change. | |||
'''Training Over Time: What Happens Each Epoch''' | |||
As the model sees more data and goes through multiple epochs, it gradually becomes more accurate. Ideally, you’ll see the loss value decrease over time, which means the network is getting better at its task. | |||
== Image Processing == | == Image Processing == | ||
Image processing refers to the | Image processing refers to the application of computational techniques to analyze, enhance, and manipulate digital images. According to Gonzalez and Woods, it involves operations that transform an image into another image, typically to improve its visual quality or to extract meaningful information. This can include tasks such as noise reduction, contrast enhancement, edge detection, and color correction. The primary objective is often to make the image more suitable for a specific application—whether that’s for visual interpretation, machine analysis, or further processing. In essence, it's about converting raw image data into a form that is easier to understand or more visually effective. | ||
[[Datei:What-is-image.png|300px|frameless|centered]] | [[Datei:What-is-image.png|300px|frameless|centered]] | ||
Fig. 5: Sample Image | |||
== Sample Task: Object Detection Identify in an Image == | == Sample Task: Object Detection Identify in an Image == | ||
* Classical Method: Circular Objects Detection | * Classical Method: Circular Objects Detection | ||
[[Datei:Data.jpg|300px|frameless|centered]] | [[Datei:Data.jpg|300px|frameless|centered]] | ||
Fig. 6: Image comprised of shapes | |||
* results: | * results: | ||
[[Datei:Results1.png|700px|frameless|centered]] | [[Datei:Results1.png|700px|frameless|centered]] | ||
Fig. 7: Circles Detected with Classical ALgorithm | |||
* AI based method: Detect people, cats and dogs in message using YOLO model. | * AI based method: Detect people, cats and dogs in message using YOLO model. | ||
[[Datei:Sample.jpg|400px|frameless|centered]] | [[Datei:Sample.jpg|400px|frameless|centered]] | ||
Fig. 8: Sample image to use for Object Detection | |||
*Results | *Results | ||
[[Datei:Results2.jpg|700px|frameless|centered]] | [[Datei:Results2.jpg|700px|frameless|centered]] | ||
Fig. 9: Results of AI detection | |||
== Results == | |||
Lane Tracking: CNN models successfully simulated lane following behavior with moderate accuracy. Initially, I had limitations as I focused just on classification,I got more data, and tried other methods. | |||
Object Detection: YOLO models identified multiple objects with high accuracy after fine-tuning and proper data labeling. | |||
Signal Processing Enhancements: Classical techniques (e.g., Hough Transforms) were used alongside AI for improved detection reliability. | |||
Tool Integration: MATLAB served effectively as a unified platform for signal analysis and AI experimentation. | |||
== Discussion == | |||
This study confirms that hybridizing classical signal processing with AI methods yields stronger results than using either in isolation. AI methods reduced manual intervention and improved adaptability, especially in real-time tasks like lane tracking. | |||
==== What are the applications of Noise Removal and Visual Relationship in the Lab ==== | |||
'''Noise Reduction:''' | |||
It helps in improving object tracking for someone who is on a project that has to do with that, as well as helping students build autonomous systems that navigate the lane. image noise reduction helps their cameras and sensors interpret the environment better. | |||
'''Visual Relation:''' | |||
Tool and part monitoring: | |||
Track which components are being used and how. | |||
Detect if required tools are missing from a workstation (useful for automation or alerts). | |||
Understand movement patterns within the lane. | |||
==== Challenges included: ==== | |||
* Poor initial dataset quality. | |||
* Need for continuous tuning and validation. | |||
* Limitations in MATLAB's GPU handling for larger models (e.g., YOLOv8 required external tools). | |||
* However, the flexibility of MATLAB in integrating classical methods with AI and the availability of pretrained models allowed for rapid prototyping and experimentation. | |||
== Conclusion == | |||
In this project, we combined classical signal processing with the learning capabilities of AI. This study achieved effective solutions to lane tracking, object detection, and signal interpretation problems. We were able to familiarize ourselves | |||
with MATLAB® AI toolboxes and Research practical application examples that can be converted to AI, and we implemented 3 selected examples. We also identified the advantages and disadvantages of AI compared to conventional data processing. During my study, I was able to achieve certifications in Image Processing, Signal Processing, and Matlab from Mathworks, in which I acquired knowledge I used in the project. | |||
== Outlook == | |||
Further research will focus on: | |||
* Real-time implementation using embedded systems or robotics platforms. | |||
* Expanding dataset diversity for generalizability. | |||
* Testing with more advanced AI architectures like Transformers. | |||
* Integrating control systems (e.g., PID, MPC) more tightly with AI predictions. | |||
== Task == | == Task == | ||
Zeile 199: | Zeile 402: | ||
== References== | == References== | ||
<ref>mathworks.com</ref> | |||
<ref>https://support.apple.com/guide/logicpro-ipad/cutoff-frequency-lpip5e73bf83/ipados</ref> | <ref>https://support.apple.com/guide/logicpro-ipad/cutoff-frequency-lpip5e73bf83/ipados</ref> | ||
<ref>https://medium.com/the-modern-scientist/the-fourier-transform-and-its-application-in-machine-learning-edecfac4133c</ref> | <ref>https://medium.com/the-modern-scientist/the-fourier-transform-and-its-application-in-machine-learning-edecfac4133c</ref> | ||
== | <ref>[https://www.mathworks.com/help/signal/signal-generation-and-preprocessing.html MATLAB Signal Processing Toolbox documentation.]</ref> | ||
<ref>[https://www.mathworks.com/help/deeplearning/index.html MATLAB Deep Learning Toolbox documentation.]</ref> | |||
<ref>Goodfellow, Bengio, and Courville, Deep Learning. MIT Press, 2016.</ref> | |||
<ref>Oppenheim and Schafer, Discrete-Time Signal Processing, 3rd Edition, 2010.</ref> | |||
<ref>Oppenheim, A. V., & Schafer, R. W. (2009). Discrete-Time Signal Processing. Pearson.</ref> | |||
<ref>V. A. Ardeti, V. R. Kolluru, G. T. Varghese, and R. K. Patjoshi, “An overview on state-of-the-art electrocardiogram signal processing methods: Traditional to AI-based approaches,” Expert Systems with Applications, vol. 217, p. 119561, 2023.</ref> | |||
<ref>Digital Image Processing" by Rafael C. Gonzalez and Richard E. Woods</ref> | |||
== Appendices == | |||
=== SVN Directory === | |||
URL: https://svn.hshl.de/svn/MATLAB_Vorkurs/trunk/Signalverarbeitung_mit_Kuenstlicher_Intelligenz | URL: https://svn.hshl.de/svn/MATLAB_Vorkurs/trunk/Signalverarbeitung_mit_Kuenstlicher_Intelligenz | ||
Aktuelle Version vom 16. April 2025, 10:57 Uhr

Autor: | Moye Nyuysoni Glein Perry |
Art: | Project Work |
Starttermin: | 14.11.2024 |
Abgabetermin: | 31.03.2025 |
Betreuer: | Prof. Dr.-Ing. Schneider |
Abstract
In modern engineering, signal processing forms a fundamental basis for analyzing and enhancing data from various sources. With the coming of artificial intelligence (AI), traditional signal processing techniques can be even replaced by AI methods capable of addressing increasingly complex tasks. This article presents an integrative project that applies MATLAB as the core platform for signal processing while incorporating AI techniques. The work includes a comprehensive study of image processing tasks, such as object detection and classification, and provides a comparative evaluation between classical algorithms and AI-based approaches. The methodology is rigorously documented through scientific research, systematic experimentation, and the use of visual aids like mind maps and annotated results.

Introduction
Signal processing has long been a basis in the analysis and manipulation of data in various domains such as telecommunications, radar, audio processing, and imaging. Signal processing has traditionally focused on analyzing, filtering, and interpreting signals in both the time and frequency domains. With the integration of AI, especially deep learning, the possibilities expand to include noise reduction and more. It is essential in many modern applications such as communications, audio and image processing, biomedical signal analysis, and control systems.
MATLAB’s extensive toolboxes for both digital signal processing (DSP) and machine learning allow for the exploration of new approaches that can potentially offer improved performance and robustness in handling noisy or complex signals.
Time planning/project plan
The project schedule was represented using Gantt charts. Figure 3 and 4 shows the original plan. Everything I planned on working on was showned as well on my mind map in Fig. 2
Signal Processing Fundamentals
Time Domain vs. Frequency Domain
Time Domain: Time-domain analysis involves studying a signal as it varies over time. However, it might be challenging to extract features such as periodicity or noise characteristics directly from the time domain.
Frequency Domain: Converting a signal into its frequency components (using techniques like the Fourier Transform) often makes it easier to identify and filter out noise, detect repeating patterns, or study signal behavior over various frequency bands.
Signals:
A signal is any piece of information that changes over time or space and can be measured. It may be continuous (analog) or discrete (digital).
Transforms:
Techniques like the Fourier Transform and the Discrete Wavelet Transform decompose signals into constituent frequency (or time-frequency) components for easier analysis.
Filtering:
The process of removing unwanted noise or extracting useful parts of a signal. Techniques include low-pass, high-pass, band-pass, and adaptive filters.
Low Pass Filters: Permit signals with frequencies lower than a cutoff frequency, useful for removing high-frequency noise.
High Pass Filters: Permit frequencies higher than a cutoff frequency, often used to eliminate low-frequency drift or interference.
Band Pass and Band Stop Filters: Focus on specific frequency bands.
cutoff frequency: The cutoff frequency, or cutoff, determines where the signal is cut off. If a signal contains frequencies that range from 500 Hz up to 8000 Hz and the cutoff frequency is set at 4000 Hz, frequencies above 4000 Hz are filtered, for example, in the case of low-pass filters.


Fast Fourier Transform (FFT) and Discrete Cosine Transform (DCT)
FFT: Extracting Frequency Components Purpose: The FFT is used to decompose a signal into its constituent frequency components quickly. It is particularly effective for analyzing periodic signals.
What It Does:
Computes the amplitude and phase of frequency components.
DCT: Energy Compaction and Compression Purpose: The DCT transforms a signal into a sum of cosine functions oscillating at different frequencies. It is popular in image and audio compression (e.g., JPEG, MP3) due to its energy compaction properties.
What It Does: Concentrates energy into a few low-frequency coefficients, which is beneficial for compression.
Frequency Over Time: Why Shift to Frequency Analysis?
Working in the frequency domain allows for:
Filtering Unwanted Frequencies: Easily design filters to isolate or remove specific bands.
Feature Extraction: Many machine learning models perform better when provided with frequency domain features rather than raw time signals.
Noise Reduction: Identify and remove noise that might not be apparent in the time domain.
Practical application examples
Literature Review
According to Oppenheim and Schafer (2009), in one of their definitions of signal processing, classical signal processing uses statistical and deterministic techniques like Fourier transforms, It encompasses the foundational techniques and concepts in the field, particularly those related to time and frequency analysis, and the development of filters and systems for manipulating signals. Despite their strength, these techniques frequently lack flexibility and necessitate manual parameter adjustment.
On the other hand, deep learning models—particularly CNNs and YOLO networks—have proven to be more effective at interpreting signal and visual data. Transfer learning makes it possible to use previously learned information for domain-specific applications by utilizing frameworks such as ResNet or MobileNet. When used in control systems, reinforcement learning presents a viable approach to dynamic system optimization According to Sutton & Barto.
MATLAB offers a platform for hybrid techniques by bridging both areas using toolboxes such as the Deep Learning Toolbox and Signal Processing Toolbox. The current research is based on this integration.
Methodology
Project Planning
- Created a mind map, Gannt Chart and project plan based on weekly goals and feedback from the supervisor.
- Documented all tasks and progress on the university Wiki and SVN.
Data Collection and Preprocessing
- Data for lane tracking and object detection collected from JetRacer and Kaggle datasets for other projects.
- Preprocessing steps included normalization, CSV-to-MAT conversion, and labeling via dedicated tools.
AI Model Training
Lane Tracking:
- Trained CNNs using both from scratch training and transfer learning (ResNet50, MobileNetV3).
- Evaluated performance using simulated driving outputs and training curves.
Object Detection:
- Applied YOLO models for object classification (person, dog, cat).
- Used Hough Transforms for circular detection.
Implementation Tools
- MATLAB toolboxes used: Deep Learning Toolbox, Signal Processing Toolbox, Image Processing Toolbox.
- Code and models were versioned using the school’s SVN repository.
Integrating AI in Signal Processing
AI Enhancements to Signal Processing
Deep learning can extract non-linear and hierarchical features that are often hard to engineer manually. When combined with traditional signal processing:
Preprocessing: Conventional filters and transforms (FFT, DCT) are used to prepare the data.
Feature Extraction: Deep neural networks can build on these features to further identify patterns, such as anomalies in medical signals or fault detection in industrial applications.
Role of Neural Network Layers in Signal Processing
Input Layer
Function:
Receives the preprocessed signal data (it may be raw data or transformed features like FFT coefficients).
Preprocessing:
Normalization and segmentation are done to ensure consistency before feeding into the neural network.
Convolutional Layers
Function:
Commonly employed in image processing, convolutional layers can also extract localized features in time-series data by sliding filters (kernels) over input data.
Signal Processing Connection: In many cases, convolutional filters can learn to mimic traditional filters (e.g., edge detectors or frequency filters).
Activation Functions
Purpose:
Introduce non-linearity into the network.
Common Functions:
ReLU: Effective in mitigating vanishing gradient problems.
Sigmoid/Tanh: Useful for certain tasks but may suffer from saturation in deep networks.
Impact on Training: Ensure that the network learns complex mappings and performs better with non-linear data representations. Pooling Layers
Function:
Downsample the feature maps. For signals, 1D pooling layers can help reduce noise and highlight significant features.
Types:
Max Pooling: Keeps the highest value in a set of features.
Average Pooling: Averages values to retain the overall trend.
Recurrent Layers
Role in Signal Processing: Designed to handle sequential data by maintaining memory across time steps. LSTM (Long Short-Term Memory) and GRU (Gated Recurrent Unit) layers capture temporal dependencies effectively.
Why They Matter: They can model long-term dependencies in signals such as speech or medical time-series data.
Fully Connected Layers
Function:
Integrate and transform features from previous layers into final predictions (classification, regression, etc.).
Mapping: Flatten the features extracted from convolutional or recurrent layers to make a decision based on all gathered information.
Deep Learning Training: Mechanisms and Optimizers
MATLAB® AI toolboxes:
Practical AI EXamples
Training Workflow Step 1: Initialization
Assign random weights for all neurons in the network.
Step 2: Forward Pass
Input data is processed layer by layer.
Input → Hidden Layers: Each hidden layer computes an output using its weights and activation functions.
Hidden → Output Layer: The final layer produces predictions or classifications.
Step 3: Loss Computation
A loss function (e.g., cross-entropy for classification, mean-squared error for regression) measures the difference between predicted outputs and ground truth.
Understanding Neural Network Training
How Backpropagation Works
Backpropagation is the mechanism that allows neural networks to learn from mistakes. It does this by calculating how much each weight contributed to the overall error, starting from the output and moving backwards through the network. This information helps adjust the network to make better predictions in the future.
Adjusting Weights During Learning
Once errors are traced back, the model changes its internal weights. These adjustments depend on two main factors:
The learning rate, which controls how big each change is.
Momentum, which smooths out updates by considering the direction and speed of previous changes.
Optimizers: How Learning Gets Smarter Stochastic Gradient Descent with Momentum (SGDM): This optimizer builds on regular gradient descent by adding a "memory" of past updates, which helps it move more confidently in the right direction and avoid zig-zagging.
Adam (Adaptive Moment Estimation): A more advanced method that adjusts how much each weight is updated by tracking past gradients and adapting the learning rate. It’s especially good for large datasets or when gradients are inconsistent.
Training in Steps: Epochs and Batches Epoch: One full cycle through the training dataset. The network sees every example once.
Mini-Batches: Instead of waiting until the whole dataset is processed, data is split into small chunks. Each mini-batch updates the model, speeding up training and using computing resources more efficiently.
During an Epoch: Every mini-batch contributes to learning. Over the course of an epoch, the model improves gradually. Tracking performance after each epoch helps identify trends and guide fine-tuning.
Key Factors in the Learning Process Activation Functions (like ReLU or Sigmoid): These functions control how much signal moves from one layer to the next. They also introduce non-linearity, which is crucial for solving complex problems.
Optimizers (Adam, SGDM, etc.): These are the engines that drive learning by using gradient information to tweak weights in the right direction.
Learning Rate: This controls how quickly the model learns. A large value can lead to unstable learning, while a small one may make training very slow.
Inside the Network: Weights, Biases, and Loss Weights and Biases: Each neuron processes inputs using weights (which scale the input) and biases (which shift the output). These are what the network adjusts to learn.
Before Updating: The model calculates the difference between its prediction and the actual result. This "loss" value tells it how far off it was, and gradients are calculated based on this error.
Backpropagation Again: These gradients travel backwards through the layers, guiding how weights and biases should change.
Training Over Time: What Happens Each Epoch As the model sees more data and goes through multiple epochs, it gradually becomes more accurate. Ideally, you’ll see the loss value decrease over time, which means the network is getting better at its task.
Image Processing
Image processing refers to the application of computational techniques to analyze, enhance, and manipulate digital images. According to Gonzalez and Woods, it involves operations that transform an image into another image, typically to improve its visual quality or to extract meaningful information. This can include tasks such as noise reduction, contrast enhancement, edge detection, and color correction. The primary objective is often to make the image more suitable for a specific application—whether that’s for visual interpretation, machine analysis, or further processing. In essence, it's about converting raw image data into a form that is easier to understand or more visually effective.
Sample Task: Object Detection Identify in an Image
- Classical Method: Circular Objects Detection
Fig. 6: Image comprised of shapes
- results:
Fig. 7: Circles Detected with Classical ALgorithm
- AI based method: Detect people, cats and dogs in message using YOLO model.
Fig. 8: Sample image to use for Object Detection
- Results
Fig. 9: Results of AI detection
Results
Lane Tracking: CNN models successfully simulated lane following behavior with moderate accuracy. Initially, I had limitations as I focused just on classification,I got more data, and tried other methods.
Object Detection: YOLO models identified multiple objects with high accuracy after fine-tuning and proper data labeling.
Signal Processing Enhancements: Classical techniques (e.g., Hough Transforms) were used alongside AI for improved detection reliability.
Tool Integration: MATLAB served effectively as a unified platform for signal analysis and AI experimentation.
Discussion
This study confirms that hybridizing classical signal processing with AI methods yields stronger results than using either in isolation. AI methods reduced manual intervention and improved adaptability, especially in real-time tasks like lane tracking.
What are the applications of Noise Removal and Visual Relationship in the Lab
Noise Reduction:
It helps in improving object tracking for someone who is on a project that has to do with that, as well as helping students build autonomous systems that navigate the lane. image noise reduction helps their cameras and sensors interpret the environment better.
Visual Relation:
Tool and part monitoring: Track which components are being used and how.
Detect if required tools are missing from a workstation (useful for automation or alerts). Understand movement patterns within the lane.
Challenges included:
- Poor initial dataset quality.
- Need for continuous tuning and validation.
- Limitations in MATLAB's GPU handling for larger models (e.g., YOLOv8 required external tools).
- However, the flexibility of MATLAB in integrating classical methods with AI and the availability of pretrained models allowed for rapid prototyping and experimentation.
Conclusion
In this project, we combined classical signal processing with the learning capabilities of AI. This study achieved effective solutions to lane tracking, object detection, and signal interpretation problems. We were able to familiarize ourselves with MATLAB® AI toolboxes and Research practical application examples that can be converted to AI, and we implemented 3 selected examples. We also identified the advantages and disadvantages of AI compared to conventional data processing. During my study, I was able to achieve certifications in Image Processing, Signal Processing, and Matlab from Mathworks, in which I acquired knowledge I used in the project.
Outlook
Further research will focus on:
- Real-time implementation using embedded systems or robotics platforms.
- Expanding dataset diversity for generalizability.
- Testing with more advanced AI architectures like Transformers.
- Integrating control systems (e.g., PID, MPC) more tightly with AI predictions.
Task
- Familiarization with MATLAB® AI toolboxes
- Researching practical application examples that can be converted to AI
- Implementation of selected examples
- Identify the advantages and disadvantages of AI compared to conventional data processing
- Discussion of the results
- Test and scientific documentation
- Providing MATLAB®-examples as wiki articles
Anforderungen
Das Projekt erfordert Vorwissen in einigen aber nicht allen nachfolgenden Themengebieten. Sollten Sie die Anforderungen nicht erfüllen, kann die Aufgabenstellung mit Blick auf Ihre Vorkenntnisse individuell angepasst werden.
- MATLAB®/Simulink
- Machine Learning/Deep Learning
- Digitale Signalverarbeitung
- Deep Learning for Image Processing
Anforderungen an die wissenschaftliche Arbeit
- Wissenschaftliche Vorgehensweise (Projektplan, etc.), nützlicher Artikel: Gantt Diagramm erstellen
- Wöchentlicher Fortschrittsberichte (informativ), aktualisieren Sie das Besprechungsprotokoll im Gespräch mit Prof. Schneider
- Projektvorstellung im Wiki
- Tägliche Sicherung der Arbeitsergebnisse in SVN
- Tägliche Dokumentation der geleisteten Arbeitsstunden
- Studentische Arbeiten bei Prof. Schneider
- Anforderungen an eine wissenschaftlich Arbeit
References
Appendices
SVN Directory
URL: https://svn.hshl.de/svn/MATLAB_Vorkurs/trunk/Signalverarbeitung_mit_Kuenstlicher_Intelligenz
→ zurück zum Hauptartikel: Studentische Arbeiten
- ↑ mathworks.com
- ↑ https://support.apple.com/guide/logicpro-ipad/cutoff-frequency-lpip5e73bf83/ipados
- ↑ https://medium.com/the-modern-scientist/the-fourier-transform-and-its-application-in-machine-learning-edecfac4133c
- ↑ MATLAB Signal Processing Toolbox documentation.
- ↑ MATLAB Deep Learning Toolbox documentation.
- ↑ Goodfellow, Bengio, and Courville, Deep Learning. MIT Press, 2016.
- ↑ Oppenheim and Schafer, Discrete-Time Signal Processing, 3rd Edition, 2010.
- ↑ Oppenheim, A. V., & Schafer, R. W. (2009). Discrete-Time Signal Processing. Pearson.
- ↑ V. A. Ardeti, V. R. Kolluru, G. T. Varghese, and R. K. Patjoshi, “An overview on state-of-the-art electrocardiogram signal processing methods: Traditional to AI-based approaches,” Expert Systems with Applications, vol. 217, p. 119561, 2023.
- ↑ Digital Image Processing" by Rafael C. Gonzalez and Richard E. Woods