\[ \begin{align}\begin{aligned}\newcommand\blank{~\underline{\hspace{1.2cm}}~}\\% Bold symbols (vectors)
\newcommand\bs[1]{\mathbf{#1}}\\% Poor man's siunitx
\newcommand\unit[1]{\mathrm{#1}}
\newcommand\num[1]{#1}
\newcommand\qty[2]{#1~\unit{#2}}\\\newcommand\per{/}
\newcommand\squared{{}^2}
\newcommand\cubed{{}^3}
%
% Scale
\newcommand\milli{\unit{m}}
\newcommand\centi{\unit{c}}
\newcommand\kilo{\unit{k}}
\newcommand\mega{\unit{M}}
%
% Percent
\newcommand\percent{\unit{\%}}
%
% Angle
\newcommand\radian{\unit{rad}}
\newcommand\degree{\unit{{}^\circ}}
%
% Time
\newcommand\second{\unit{s}}
\newcommand\s{\second}
\newcommand\minute{\unit{min}}
\newcommand\hour{\unit{h}}
%
% Distance
\newcommand\meter{\unit{m}}
\newcommand\m{\meter}
\newcommand\inch{\unit{in}}
\newcommand\foot{\unit{ft}}
%
% Force
\newcommand\newton{\unit{N}}
\newcommand\kip{\unit{kip}} % kilopound in "freedom" units - edit made by Sri
%
% Mass
\newcommand\gram{\unit{g}}
\newcommand\g{\gram}
\newcommand\kilogram{\unit{kg}}
\newcommand\kg{\kilogram}
\newcommand\grain{\unit{grain}}
\newcommand\ounce{\unit{oz}}
%
% Temperature
\newcommand\kelvin{\unit{K}}
\newcommand\K{\kelvin}
\newcommand\celsius{\unit{{}^\circ C}}
\newcommand\C{\celsius}
\newcommand\fahrenheit{\unit{{}^\circ F}}
\newcommand\F{\fahrenheit}
%
% Area
\newcommand\sqft{\unit{sq\,\foot}} % square foot
%
% Volume
\newcommand\liter{\unit{L}}
\newcommand\gallon{\unit{gal}}
%
% Frequency
\newcommand\hertz{\unit{Hz}}
\newcommand\rpm{\unit{rpm}}
%
% Voltage
\newcommand\volt{\unit{V}}
\newcommand\V{\volt}
\newcommand\millivolt{\milli\volt}
\newcommand\mV{\milli\volt}
\newcommand\kilovolt{\kilo\volt}
\newcommand\kV{\kilo\volt}
%
% Current
\newcommand\ampere{\unit{A}}
\newcommand\A{\ampere}
\newcommand\milliampereA{\milli\ampere}
\newcommand\mA{\milli\ampere}
\newcommand\kiloampereA{\kilo\ampere}
\newcommand\kA{\kilo\ampere}
%
% Resistance
\newcommand\ohm{\Omega}
\newcommand\milliohm{\milli\ohm}
\newcommand\kiloohm{\kilo\ohm} % correct SI spelling
\newcommand\kilohm{\kilo\ohm} % "American" spelling used in siunitx
\newcommand\megaohm{\mega\ohm} % correct SI spelling
\newcommand\megohm{\mega\ohm} % "American" spelling used in siunitx
%
% Inductance
\newcommand\henry{\unit{H}}
\newcommand\H{\henry}
\newcommand\millihenry{\milli\henry}
\newcommand\mH{\milli\henry}
%
% Power
\newcommand\watt{\unit{W}}
\newcommand\W{\watt}
\newcommand\milliwatt{\milli\watt}
\newcommand\mW{\milli\watt}
\newcommand\kilowatt{\kilo\watt}
\newcommand\kW{\kilo\watt}
%
% Energy
\newcommand\joule{\unit{J}}
\newcommand\J{\joule}
%
% Composite units
%
% Torque
\newcommand\ozin{\unit{\ounce}\,\unit{in}}
\newcommand\newtonmeter{\unit{\newton\,\meter}}
%
% Pressure
\newcommand\psf{\unit{psf}} % pounds per square foot
\newcommand\pcf{\unit{pcf}} % pounds per cubic foot
\newcommand\pascal{\unit{Pa}}
\newcommand\Pa{\pascal}
\newcommand\ksi{\unit{ksi}} % kilopound per square inch
\newcommand\bar{\unit{bar}}
\end{aligned}\end{align} \]
Dec 03, 2024 | 221 words | 2 min read
9. Checkpoint 1
In this module, students will be introduced to extracting hidden messages from images
using the Least Significant Bit (LSB) technique. The goal is to load, validate, and
process images in Python, extract binary data from the image’s pixel values,
and convert it into readable text. This task will reinforce skills in image processing,
binary data manipulation, and error handling.
Topics Covered
Image Processing with Python
Handling Different Image Formats (RGB, Grayscale, RGBA)
Least Significant Bit (LSB) Technique for Data Extraction
Binary Data Conversion to Text
Error Handling in Python
Learning Objectives and Course Outcomes
At the end of this module, you will be able to:
Load and validate images in various formats (RGB, Grayscale, RGBA)
Apply the LSB technique to extract hidden binary messages from images
Convert binary messages into readable text using Python functions
Handle image errors and validate formats with exception handling
Write Python code that adheres to professional programming standards
These learning objectives are directly connected to the following Course Outcomes:
- CO 1.1:
Visually represent data and derive meaningful information from
data.
- CO 1.2:
Apply key engineering statistics concepts including mean, median,
mode, variance and standard deviation to engineering problems.
- CO 4.1:
Develop code solutions that address engineering questions and
follow professional programming standards.
- CO 4.4:
Apply design ideas to programming solutions.
- CO 4.5:
Read and apply flowcharts as a visual representation of a
process.