Transcripts
1. Introduction To Course: Welcome to Mine learning
project course. In today's class, we
are going to create a project phase recognizon atenance system using KNN
algorithm and open CV. So this course consists
of two modules. In the first module we are
going to discuss about how to create the data set for our
phase recognition project, and also we are going
to discuss about how to save the dataset
for our project. In the second model, we are
going to discuss about how to train the dataset using
the KNN algorithm, and also we are going
to discuss about how to create the
attenance for our project. So this course is very, very, very useful for the
students who are trying to create phase recognition atnance system for the first time. So let's get started.
2. DATASET MODULE CLASS 1 : IMPORT PACKAGES: Welcome everyone to
the first class. Today's class, we are
going to discuss about how to import the
packages and how to import the dataset for our project phase
recognizer atnan system using KNN and OpenCV. For the first, we
are going to create a new Python file
in the PyCaM IDE. So you ought to
select your folder, and then you have to
select new Python file. In that, you have to type
your own Python file name. For the first, we are going
to create the dataset. For that, we are typing
the name dataset dot PI. Before running your project, you have to set your
Python interpreter. For that, you have to
select the settings. In the settings,
you have to select the project Python interpreter. After that, you have
to select any one of your Python interpreter
for running your project. For my project, I'm going to use the Python three Pine
NN for my project. So you have to select any one
of your Python interpreter. After that, you have
to select Okay. That's it. So these are the first steps for
running our project. So we are going to discuss
about how to import the packages for our
project. So let's start. First, we are going to
import a package CV two. For that, you to
type Import CV two. So CV two is nothing but OpenCV package for
opening the web camera, for detecting the phases. After that, we are
going to import second package NumPi as NP. So numPi for creating the array. After that, we are going to
import a third package OS, OS for reading and writing
the files in the OS. After that, we are
going to import a fourth package pickle. So pickle is very, very useful
for saving our dataset. For that only, we
are going to use the pickle package for
saving our dataset. So if you don't know how
to install the packages, for our project, you have
to select the settings. So in the settings, you have to select
the plus icon. So plus icon is nothing but
installing the packages. So you have to select
that. After that, you ought to type
your package name. For that, I'm going to
type package pickle. After that, you can
see the packages available for your project, how to select your own package, and then you have to
select install package. So it will install your
packages for your project. So that's the step
for installing the packages in the Picham IDE. After that, you ought to set o. So these four packages must
be installed for our project. So after that, we are
going to discuss about how to import the dataset
for our project. For the dataset, we
are going to use our web camera to direct the
pass and recognize the pass. For that only, we are
using the CV two package. So you have to type
video equal to C two. So CV two is the package
and Video VDO capture. So we are going to
capture our video. So inside the bracket, you have to type zero. Zero is nothing but web camera. So we are going to use the web camera to
capture our face. So that's why we
are using the zero for capturing the web camera
for the phase dataset. So that's the meaning
of the first line. So we are going to use our web camera to
detect our faces. It will be used for our dataset. After that, we are going to
use the phase deduct using the Cascade classifier algorithm
from the CV two package. For that, you have to type CV
two dot Cascade classifier. So OpenCV uses Haar
Cascade classifier to deduct the phases
in the web camera. For that only we are using
the Cascade classifier. So inside the bracket, we are going to
import the XML file. So EML file for frontal
phase deduction. For that, we are going
to use the Google to download the XML
file for our project. For that, you have to open the Google and then
you have to type Haar Cascade frontal phase,
default aL download. So you have to open the Gitup for downloading the
frontal phase XML file. So you can see a lot of XML file available for your project. We are going to use
only the frontal phase, default XML file. So you have to download that so our file is downloaded,
so you have to open that. So you have to copy
the file and paste that file in your
project folder. So the examal file will be present in your
project folder. After that, you have to
open your Picham IDA. So in that, you can see your
examL file is available. And then you have to copy
the examal file name. After that, you have to paste that file name
inside the bracket. So that said, we
are going to use the Haar Cascade EamLFle
to deideect our phases. So after that, we
are going to create a new array to store
the phase data. And then I equal to zero. And then name equal input
taf Enter your name. So we are going to ask the user to enter
their student's name. For that only, we
are using the user defined input value.
So that's it. In today's class, we are
discussed about how to import the packages like CV two. So C two is for the web camera and NumPi is for the array, is for reading and
writing the file, pickle for storing the dataset. After that, we are using our web camera to
detect our phases, and then we are
using the XML file for the phase frontal deduction. And then we are creating the array for storing
the phase data. At last, we are storing the
user defined student's name. So in the next class, we
are going to discuss about how to detect the pass
using the web camera. So let's see in the next class.
3. DATASET MODULE CLASS 2 : IMPORT DATASET & OPENCV: Welcome everyone to
the second class. In today's class, we are
going to discuss about how to use the web camera
to detect our faces, along with the OpenCV algorithm. In the previous class,
we are discussed about how to import
the packages. In today's class, we are
going to discuss about how to use the web camera
to detect our faces. For that, we are using
the wild condition, and then we are using the
variable RET and frame equal to Video dot, read. We are going to read
our web camera. And gray Gray will
be the variable CV two dt CVT color of Inside that, you have to type the frame. Co Cv two dt color BGR. BGR to gray. So we are converting our colorful images to black
and white images because Haar Cascade classifier uses grayscale images for
directing the faces. For that, only we are converting the colorful images
into black and white. First, we are
reading the images, and then we are converting the images into black and white. So that's the meaning
of these two lines. So after that, ato type phases, equal to phase, deduct, dt, deduct, multi scale. So we are just using the scaling functions for
reading our web camera video. So the scaling factor
will be 1.3 and gray, and minimum neighbors
will be five. So we are using the
scaling functions. After that, we are going
to use the far loop. For inside the bracket, we are going to type
the coordinates like X, Y, W H W H is nothing
but width and height. So you have to type X, Y, W huh in phases X, Y, W H in phases. We are just finding the
coordinates in the pass. After that, we are going to crop our image frame we are going to crop our frame,
see how to type this. So Y is two Y plus H X two, X plus width Y plus
height, X plus width After that, after
cropping our image, we are going to
resize our image. For that, we have to
type resized image equal to CV two dart resize. We are going to resize our
image for our own convenience. Crop image. Come on. Inside the bracket, you have
to type the size 50 50. We are going to resize our
image into 50 coma 50. Height and width
will be 50 co 50. After that, we are going to use the I length of phase data. So phase data is
nothing but array. So array length less than 100 and I modulo ten,
equality equal zero. If these two conditions
are satisfied, so we are going to
execute our condition. C two dart, put text. We are going to
write our text in the frame, frame comma, STR, string string of,
no phase theta. Total data in the phases. How many phases are deducted
using our web camera. So that's the meaning
of Lena phase of data. We are going to write our text that is Lena phase
of data in the output. So then size will be
original size will be 50, come 50 with height. C CV two dot font, we are going to use the font, and then you have to
type the font scale. Font scale will be one. 50, come 50, and then you
have to type your color. So you can type your own color. Comma one. So that's the meaning
of this line. We are going to write the
text in the output frame. After that, we are going to use the CV two package rectangle. C two dot, rectangle off, we are going to create a
rectangle to deduct our face. For that, only we
are using the code. For deducting the pass, we are going to
use the rectangle. So inside the frame, we are going to
use the rectangle. So you have to type the
coordinates X and Y, and plus width, Y plus height. That is Hutch. C, 50, C, 50. C 255, it is color
of our rectangle. C one. Thickness will be one. If you want more thickness, you can type two,
three, or four. If you want less thickness, you can type one for creating the rectangle
to direct our faces. So after that, we are
going to show our output. For that, we are going to use
IM show of frame, co frame. So the windows name
will be frame. And then you have to
type K equal to CV two dot, weight of one. So the way key will be one. And then K equal equal 50. If K equality equal to 50, our output will be break. So if the phases are directed 50 times our
output will be break. That is quick from our output. After that, we are
going to release our video after the
completion of our output, our video will be released. We are going to remove
all the output. For that only, we are typing CV two dot, destroy all windows. So the intendation of Python
is very, very important. If you ignore that, it will
be considered as error. So that's it. In today's class, we discussed about how to use the web camera
to detect our paces. In the next class,
we are going to save the deducted pass
using the pickle package, so that will be considered
as our dataset. So let's see in the next class.
4. DATASET MODULE CLASS 3 : OUTPUT & EXPLANATION: Come, everyone,
in today's class, we are going to discuss
about how to save the detected phases and convert that phases
into our dataset. For that, we are going to use our pickle package to save
the dataset for our project. So we are going to see how to save the dataset using
the pickle package. So how to tie phase data
equal to Np dot array of we are going to convert our normal phase
data array into NumPi array. So inside the bracket, you have to type the
array that is phase data. We just converted
our phase data, normal array into NumPi array, and then you have to
type phase data equal to phase data dot resp. We are going to resave all the phases
detected in the array. So you have to type the
values 100 comma minus one. We are going to resave that so we are just converted our normal
array into nape array. So this array consists of all our phases deducted
using the web camera. So after that, we are
going to discuss about how to save the dataset
using the pickle file. For that, we are going to create two pickle file for
saving the dataset. The first one for saving the student's name
for the attendance, and the second
pickle file will be the phases detected
using the web camera. So we are going to save
the pickle file for that, we are going to create an
condition if names dot PK. So that is Pin in OS. So if the pickle files are
not present in our OS, we are going to
create a new folder. For that, you have to
type your folder name. Our folder name will be theta. So you have to create a
folder in your project. For that, you have to
create new folder. So you have to type data. Inside the data, our dataset will be stored using
the pickle package. So pickle package is very, very useful for
saving our dataset. So after that, we are going
to use the names variable. So the names is nothing but
the names of the students. We are going to
save the names of the students for our dataset. So you have to type
name star hundred. Open, we are going
to open the file. Inside that, you have to
type the folder name, theta, you have to type
inside the quotation, Theta slash names dot PKLPickle so I have to
close the quotation, C, WB, we are going to use the write
format to write our data. As F. We are going to rename that
folder as F. After that, we are going to store
our names for that, you have to type
pickle dot dump. We are going to dump our names inside the names
dot pickle file. So that's the use of WB. WB is nothing but
writing format. We are going to write our names inside the
names dot pickle file. Else, we are going
to open the file. If the pixels file is already
present in our output, we are going to update the file. So that's the use
of else condition. If if the pickle is not present, we are going to
create a new folder. So s is for if the
pickle already present, we are going to
update the values. So again, we are going to
use the names dot pickle in reading format as F. So we are going
to read what are all the names and pass
stored in the pickle file. And names equal to
Pickle dot Load. We are going to load the
file for our dataset. And names equal name plus name star hundred. So the is far if the
file is not present, we are going to create
a new pickle file. We are going to open the
data folder again using the names dot pick Come WF. So the abos function
is used for loading, what are all the names
present in the pickle file. So the Blows function is
very, very useful for. If we want to update the values, we are
going to use that. We are going to update the
new values for our project. So after that, we
are going to create a second pickle file that
is phase data dot pickle. So again, we are going
to type the A fungals. If the phase data
dot pickle file is not present in our OS, we are going to create
a new folder for storing the phase
data, pickle file. So inside the data folder, we are going to create
a second pickle file that is phase data. So the phase data consists of all the phases detected
using our web camera. So again, we are going to open the phase data Pickle file dot W. As tickle dt dump off. We're going to store the phase data Come
on in the folder. So if the phase data pickle file is not present in
the data folder, we are going to create a
phase data Pickle file. Else, if the phase
data pickle file already present in our folder, we are going to update
or load the file. For that, you have to type the two codes for
loading and update. First, we are going to type for loading the phase data
pickle file for our project. So for that only, we are using the RB
RB for read only. We are just reading the
already present pickle file. So you have to type faces
equal to pickle dot load. So we are going to load the already present pickle
five for our dataset. After that, atotypePass
equal to N B dot, upend. We are going to upend the
phases in the phase data. Axis equal to zero. After that, we are going
to update the pickle file. So if any new phases are
detected using our web camera, it will be updated
in the pickle file. For that, only we are typing the WB for updating the file. The first one for loading
the file as read format. The second one for updating
the file as WB format. You have to type open
pickle dot, dump. So dump is useful for updating. Load is for already present. Pass phases F. So that's it. We have completed our first module for creating the dataset for our project. Before running your projects, there is some small mistake you have to re change the code. So you have to delete the
K equality equal to 50, so it will not produce the output for that we are
going to reach in the code, len of phase data,
equality equal to 50. So if the len of phase
data equality equal to 50, after that only our
output will be exit. Of the previous code, you have to delete that. After that, you have
to run our code. So you have to type your
student's name or your own name. So I'm going to type my name, and then you have
to press Enter. After that, you can see your
phase is detected using the web camera along
with the number of pass detected in the web camera. So 17, 1920, it will be
the n of phase of data. So after the 50, our output will be exit. So you have to wait
for the 50 countdown. So 50 phases are deducted. After that, your phase will
be stored in the pickle file. So you can see in the data, there are two pickle
files are generated. The first one is the
phases deducted in the web camera and the
second one is the name. So name after student. So the name will be Run the
phase will be Run phases. So that's the use of our
first module dataset. So that's the use
of the pickle file. So pickle file is very, very useful for
saving our dataset. So our dataset
consists of two files, names and the faces
of the students. So in the next class, we are going to
discuss about how to create the attendance
for our project.
5. ATTENDANCE MODULE CLASS 1 : IMPORT PACKAGES: Welcome everyone to
the second module, we are going to discuss
about how to create the attendance using
the KNN algorithm. In the previous class,
we discussed about how to create the
dataset for our project. So in today's class, we are going to discuss
about how to import the packages for our
project. So let's start. So first, we are going to import the CV two package for reading the phases
in the web camera. And then we are going to import the second package NumPi
for creating the array. After that, we are going to
import a third package OS. After that, we are going to
import the fourth package. That is CSV. We are going to use the CSV file for our
project attendance. So the CSV files contains the
attendance of the students. And the fifth package will be T for decting the
time of the students, and the sixth package
will be pickle for loading the dataset of the faces and
the student's name. After that, we are going to
import the SC learn package. So in the SK lean, we are going to import the
KNN N K neighbors classifier. So we are going to use the K neighbors
classifier algorithm. So this algorithm will
be used for our project. And then we are going
to import the date and time for storing the date and time of the students because atnans
consists of date and time. So we are going
to input daytime. So these packages must be
installed in your Python IDE. So CV two is for web camera, Nampa is for array, OS for reading the files, CSV for the attendance, time for storing the time of the students and pickle
for loading the dataset. And then K neighbors algorithm for the training of the dataset. We are going to train the
dataset using the KNN. At last, we are going
to use the data and time for our student atance. So after that, we are
going to discuss about how to load the dataset
for our project. For that, you have to type
video equal to for that, you have to tie video equal to, C V two dot, video capture. We are going to capture our
video using the web camera. For the web camera,
you to t zero. After that, we are
going to deduct the phases using the
castde classifier again. You have to type
Cascade classifier. So inside the bracket, you have to type
the XML file name. You have to type
the XML file name. So in the next class, we are going to
discuss about how to import the dataset and how to train the dataset
using the KNN algorithm. So let's see in the next class.
6. ATTENDANCE MODULE CLASS 2 : IMPORT DATASET & OPENCV: Welcome, everyone.
In today's class, we are going to discuss
about how to recognize our faces using the
K and N and OpenCV. For that, we are going
to create a I loop. Inside the Y loop,
we are going to type the code for
recognizer the faces. First, we are going to create
the variable for reading the web camera video dot, read. We are going to read
the web camera. And then we are going to
convert the images into grayscale for that your tot
gray equal to C two dt, CVT color, we're going to
change the color of the mages SV two dt BGR color,
BGR two gray. That is black and white. We are converting our frames
into black and white. After that, we are going to use the multiscale function for
our frame for that to type, direct multi scale of gray coma, scale factor will be 1.3, and minimum neighbors
will be five. So these codes are same as
the previous module dataset. After that, we are
going to create the far for the coordinates X, Y, W, Hutch, W HH is nothing
but width and height. In phases, we are going to find the coordinates
in the phases. And then we are going to crop our image for our
own convenient. So we are going to
crop the frame. Y is the Y plus hutch. Come, X plus hutch. Sorry, X plus W. So we are going to
crop the image, and then we are going
to resize the image. Equal to CV dot
resize of crop image. So crop image will be
resized to 50 coma 50. So that is width and height. After that, we are going to
flat the shape of the images. So we are just reshape that and then we are finding the
output of the resized image. For that, we are using the
KNN to predict the output. So we are just recognizer
the images using the KNN algorithm because the KNN algorithm
trains the dataset. After that, we are finding
the time for the attenans. Also, we are finding
that date time stamp. We are using the time stamp Ts dot Inside the quotation, you have to type the format. The first one will
be that day, Monday, Tuesday or Wednesday, and
then month, March or April. And then you have to
type the year 2024. So that's the
format of the date. And then we are
finding the timestamp, date time dot from timestamp. We are finding the
timestamp of the students. So after 10 minutes, the student is present. After the 10 minutes, again, next student
will be present. So that's the timestamp. So you have to type the format, how minutes and then seconds. So that's the timestamp. So each students will come because each students will come with their
own timestamp. After that, we are going
to use the is equal to OS dot path dot is file Attendance. We are going to create a
new folder for attendance. So inside the attendance folder, we are going to
create a CSV file. For that, you to type the
CSV file name, attendance. You can type your own
format, plus date, so date of the attendance,
plus dot format. Format will be CSV. So that's the format
of the CSV five. After that, we are using the C two for finding the pass
using the rectangle. So we are just
finding the faces of the students using
the rectangle. We have to type the coordinates
like X and Y, X, Y, X plus with Y plus height. Zero, zero, 255. That's the color
of the rectangle. I think it is red dark green. So you can type your
own color 002 55. One will be the thickness
of the rectangle. After that, we are going to use the rectangle again because our background image rectangle will be considered
for our output. It So x plus W Y plus HH. Come, 50, come up 50. Come on, 255, come on, two. So two is nothing but thickness. 50, come up 50, come on, two, 55 is color of the rectangle. Two is nothing but
thickness of the rectangle. Again, we are using the
rectangle function. So you have to consider
the background shape of the rectangle because we are
using the background image. So inside the background image, we are using the
CV two plus W Y, inside the bracket, you
have to type the color. So color will be 50, 52 55 minus one minus one
will be the thickness. After that, we are going to type the text inside the frame
for that dot to type, put text of frame. Inside the frame, we are
going to type the text. So the text will be X, Y, X plus W, co, Y plus HH, Come on, 50, 50 to 55, font, and then thickness. Font scale will be one. So we are going to type
the text inside the frame. So after that, we
are going to create the attenanceu to type
atnance equal to. String of output. So the predicted output will be present in the
attendance CSV file. So the predicted output will be the face of the
student at the name of the student in the zero index of the CSV file. So the timestamp. And then image background
in 62 is the 162 plus 480. Come on. 55 is 55 plus it's 40. So there's the background image, size, equal to frame. The frame will be this format. So in the next
class, we are going to discuss about how to import the dataset inside
the attendance CSV file. So let's see on the next
7. ATTENDANCE MODULE CLASS 3 : TRAIN DATASET USING KNN: Welcome everyone to
the second class. In today's class,
we are going to discuss about how to import the dataset and how to use the KNN algorithm to
train the dataset. For that, we are
going to see that. I have to type KNN equal
to K neighbors classifier. The full form of the KNN
is K nearest neighbor. And then you have to use the
neighbor value will be five. So KNN is a supervised
missin learning algorithm. So we are going to
fit the values of the dataset, pass and labels. So the pass contains
the faces of the users, and the labels contains
the name of the students. So we are going
to discuss how to import these two files using the pickle package because the pickle contains the
names and the pass. For that, we are going to
load the dataset with open. We have to type
caret, open, off. Inside the data folder, the pickle file is present. First, we are going
to use the names dot Pickle File in read format. RB as W. We are going
to read the names, so we are going to store the names in the
labels variable. After that, only we can train
the dataset using the KNN. So we are going to load the
names inside the labels. So after that, we are
going to load the faces of the students using the
phase data pickle file. For that, you have
to open the file, so you have to type data. So inside the data folder, we are going to load the
phase data pickle file. As B, read format. We are going to read what are all the phases stored
in the pickle file as F. And then we are
going to store the phase data using
the phases variable. Pickle dt load. We are going to load
the phase data. The first is useful
for names pickle file, so it contains the
names of the students, and the second very useful for phase data because it contains
the pass of the students. Before running this,
you have to copy that, and then you have to
pace above the KNN because Python is up
to down interpreter. For that only, you can
see the error is zoned. So to type above the KNN pickle file because
the Python is up to down. Interpreter goes
from up to down. After that, we are going to use the image background
for our project. So it will be considered as GOI. So you have to type image
background equal to dot, IMR of how to type
your background name. So you can create
your own background. For my project, I'm going
to use this background. So inside the rectangle, my face will be detected
and recognized. And then you have to paste the background inside
the quotation. So these resources will be
uploaded in your course. So you don't have to worry
about the resources. I will upload the resources
in the course section. So after that, we
are going to create the column names
for our CSV file. So the columns contains
the name of the student, and then Tim Time after student. So tnance is based on the
name Tim. So that's it. In today's class, we
discuss about how to load the dataset
for our project. And then we discuss
about how to train the dataset using
the KNN algorithm. So the KNN dot Fit will
train the dataset. So in the fit
function of the KNN automatically
trains the dataset. So we don't have to type the code for the
training of the dataset. And then we are using
the image background for the GUI purpose. After that, we are using the column names
for our CSV file. So in the next class, we are going to discuss
about how to recognize the phases using the web
camera. Let's see in the next
8. ATTENDANCE MODULE CLASS 4 : OUTPUT & CONCLUSION: Come everyone to
the final class. In today's class,
we are going to see our output using
the KNN algorithm. Before seeing the output, we are going to
create the CSV file. For that, we are going
to discuss that. So you have to type C two dart, I am so for sewing the output. So you have to type
the frame name, and then you have to
type image background. So the frame will be considered
as image background. And then you have to
type K equal to CV to dart weight one. And then we are going
to use the I condition, K equal equal ORD. Inside that you have to
type the alphabet O. So if the user types O, our atnance will be taken. So if the user clicks O, our atnans will be taken
from our web camera. So that's the use of K
equality equal to ORD of O. From that, we are going to
create that sleep function. For taking the atance
of the students. After that, we are going to
create the second if exist. If the CSE file exist or not, we are going to open the file. Inside the bracket, you have
to type the attenanceFolder, atenance attendance CSV plus so it will be double quotation date CSV. So we are just opening
this CSV file, you have to take the
format, correct? Dot and then format after CSV, plus A as CSV. P. We are opening this CSV file. Writer equal t CSV,
dot, write off. We are going to write the
output inside the CSV file. Rows will be our output written. Write dot, write dot, right row of attendance. So atans will be small So
that's why source error. Stance is small variable. After that, we are going
to close the CSV file. Else with open atnans we are going to
open the tenansFle The first I is far already, the CSV file is present, we are going to update. The second one is far. If the CSV file
does not present, we are going to
create the CSV file. The first if is for the tenans already present
inside that folder, we are going to
update the values. The second one is for creating the new tenans file
for the project. Because we are going to the
attenance for each day. Same day will be updated. For the second day, we are going to create
new attenanceSV file. For that only we
are creating the I fundiLsF is for updating
the values in the same day, is for creating the
attendance in the next day. You have to type writer dot
write row of column names. The column names will
be name on the labels. Atnans we are going
to write the atance. After that, we are going
to close the CSV file. We are going to close our
output for that Yo two ti, K equal t equal to ORD of Q. So if the user clicks the Q, our output will be exit. So that's the use
of break condition. And then we are going
to close our output for that Yotti video
dot release off. And then YotTi C two dt, destroy all windows
for exit our output. So that's it. We have completed our project phase recognizer tenan system using KNN and OpenCV. The first class, we discussed
about how to import the packages and the XML
file for our project. So in the second class, we are discussed about how to load the dataset using
the pickle package. And then we are
trained the dataset using the KNN algorithm. After that, we are using the
background for our project. And then we are using the web
camera to detect the faces, reading the faces, converting
the images into grayscale, and then we are using
the multiscale function. And then we are cropping
the images after that, we are finding the output using the KNN algorithm because the KNN algorithm
trains the dataset. After that, we are finding the date and time
of the students. And then we are finding the recognized pass
using the rectangle. At last, we are creating
the CSV file to store the names of the students along
with their date and time. That's the use of CSV file. So the CSV files contains the recognizer Sudan
phase with their time. After that, we are
closing our output. So that's it. We have
completed our project, so you have to run this code. So in the output, you can see
your phase is deducted and recognized very successfully
using the KNN algorithm. Also, you can see the beautiful background image
for our project. After that, you have to click O for taking the attendance. So if I click ox, my output will be sleep for 5 seconds for taking the
attendance of the students. At last, you have to exit
the output using the Q. So you have to click Q
to exit your output. Your CSV file is created
along with the date and time. So the dat and time inside that, you can see the
column name and time, the name of the students, and the time of
the present data. So you have to
open the CSV file. So in the CSE five, you can see the
name and the time. So name and the time
format, 24 and 2024. So the 20 will be that day, four will be the month, and then 2024 will be the year. So that's it, everyone. We have completed our
face recognizer at Nan system project using the
OpenCV and KNN algorithm. If you like my project, please put positive review
in the command section. Hope I can see you in the upcoming courses
teached by me. Thank you.