0% found this document useful (0 votes)
99 views

Name-Ashwin Kumar Course-B-Tech (Electronic and Communication Engineering) Passing Year-2019 College-NIT, Patna Mob-9006797862

This document summarizes a project on handwritten character recognition using neural networks and a password protected door lock system using Arduino. For the character recognition project, the student used MATLAB to take in handwritten images, convert them to binary, segment the images, and feed them into a neural network to detect characters. For the door lock project, the student designed a system with an Arduino, keypad, LCD, and other components to set and check a password and control a door lock. Code and circuit diagrams are included for both projects.

Uploaded by

Ashwin Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
99 views

Name-Ashwin Kumar Course-B-Tech (Electronic and Communication Engineering) Passing Year-2019 College-NIT, Patna Mob-9006797862

This document summarizes a project on handwritten character recognition using neural networks and a password protected door lock system using Arduino. For the character recognition project, the student used MATLAB to take in handwritten images, convert them to binary, segment the images, and feed them into a neural network to detect characters. For the door lock project, the student designed a system with an Arduino, keypad, LCD, and other components to set and check a password and control a door lock. Code and circuit diagrams are included for both projects.

Uploaded by

Ashwin Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Name-Ashwin Kumar

Course-B-Tech (Electronic and Communication Engineering)


Passing Year-2019
College-NIT, Patna
Mob-9006797862
[email protected]
1.Handwritten Character Recognition Using Neural Networks
In This project I made hand written character recognition Using Neural network in MATALAB in
which I used supervised learning algorithm. I take data set and feeding into network 80% data set
for training and 20 % data for testing. during the testing we convert images, RGB to Gray and Gray
to binary so that image features reduces in only 1 and 0 .During image segmentation we rectangulise
all the images separately and corresponding to that level we have image set data in which
probability is highest that will be output character. This system recognize only capital and numeric
letter. Code explanation is given below. This Block diagram show the process evolving during
character recognition.

**********************************************************************************

close all

clear

clc

addpath(genpath('C:\Users\Ashwin\Documents\MATLAB\MiniProject\testImages'))

load('network.mat');

%% Input Image
imagePath = fullfile('testImages','ashwin.png');

originalImage = imread(imagePath);

% Showing Original image

imshow(originalImage);

title('Original Image');

% Conversion to grayScale image

grayImage = rgb2gray(originalImage);

% Conversion to binary image

threshold = graythresh(grayImage);

binaryImage = ~im2bw(grayImage,threshold);

% Removes all object containing fewer than 30 pixels

moddedImage = bwareaopen(binaryImage,30);

pause(1)

% Showing binary image

figure(2);

imshow(moddedImage);

title('Modified Image');

% Labelling connected components

[L,Ne] = bwlabel(moddedImage);

% Measuring properties of image regions

propied = regionprops(L,'BoundingBox');

hold on

% Plot Bounding Box

for n=1:size(propied,1)

rectangle('Position',propied(n).BoundingBox,'EdgeColor','g','LineWidth',2)

end

hold off

pause (1)

%% Image Segmentation

for n=1:Ne

[r,c] = find(L==n);
n1 = moddedImage(min(r):max(r),min(c):max(c));

n1 = imresize(n1,[128 128]);

n1 = imgaussfilt(double(n1),1);

n1 = padarray(imresize(n1,[20 20],'bicubic'),[4 4],0,'both');

fullFileName = fullfile('segmentedImages', sprintf('image%d.png', n));

imwrite(n1, fullFileName);

pause(1)

end

%% Feeding to Neural Network and Detected Text

for i=1:Ne

segImage=reshape(double(imread(fullfile('segmentedImages', sprintf('image%d.png', i)))) , 784, 1);

outputMatrix=net(segImage);

row=find(ismember(outputMatrix, max(outputMatrix(:))));

character = double(imread(fullfile('segmentedImages', sprintf('image%d.png', i))));

detectedWord(1,i)=imageLabeler(row);

end

disp('Detected Text: ')

disp(detectedWord)

2.PASSWORD PROTECTED DOOR LOCK SYSTEM


In this project I designed “password protected door lock system using Arduino board . In this system
I designed to set first time password for user as private key for door and when now user again gives
the password it accessed if password is correct or denied if password is wrong and a hooter will
arise. For this system I made hardware also where mainly I used mainly LCD(32*2),Arduino
Board,keypad,leds,speaker,resistance,capacitor,potentiometer,power supply 5v&9v,Arduino IDE.I
also designed it on proteus for circuit simulation and for hardware I did pcb designing on Eagle cad.
Circuit Diagram on proteus .

**********************************************************************************

#include <LiquidCrystal.h>

#include <Keypad.h>

char data[8];

int i=0,t=4,q=1;

//initialize lcd,and keypad

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

const byte ROWS = 4; //four rows

const byte COLS = 3; //four columns

//define the symbols on the buttons of the keypads

char keys[ROWS][COLS] = {

{'1','2','3'},

{'4','5','6'},

{'7','8','9'},

{'*','0','#'}

};

byte rowPins[ROWS] = {8, 7, 6, 13}; //connect to the row pinouts of the keypad

byte colPins[COLS] = {9, 0, 10}; //connect to the column pinouts of the keypad

//initialize an instance of class NewKeypad

Keypad kpd = Keypad( makeKeymap(keys), rowPins,colPins, ROWS, COLS );

void delet(){

lcd.setCursor(13, 1);

for(int j=4;j<8;j++)

lcd.print(data[j]=0);

void repeat()
{ lcd.setCursor(13, 1);

for(int j=4;j<8;j++)

lcd.print(data[j]);

if(i<4)

{ lcd.setCursor(8, 0);

lcd.print("SET PASSWORD");}

if(i==4)

if (q==5)

lcd.setCursor(0, 0);

lcd.print(" YOUR PASSWORD HAVE BEEN SET ");

delay(400);

delet();

delay(1000);

lcd.clear();

q++;

if (q>=6){

lcd.setCursor(4, 0);

lcd.print(" ENTER PASSWORD ");

/*==============================================================*/

if(q>7){

if(i<=9)
{

lcd.setCursor(0, 0);

// IF PASSWORD MATCHED

if(t==8){

if(data[4]==data[0]&&data[5]==data[1]&&data[6]==data[2]&&data[7]==data[3])

{delay(500);

delet();

{lcd.setCursor(4, 0);

lcd.print(" PASSWORD MATCHED ");

analogWrite(A1,1024);

delay(500);

lcd.setCursor(4, 0);

lcd.print(" ");

lcd.setCursor(4, 0);

lcd.print(" WELCOME! ");

analogWrite(A1,0);

delay(1500);

analogWrite(A1,0);

lcd.setCursor(4, 0);

lcd.print(" ");

/*==============================================================*/

if(t==8)

t=4;

/*==============================================================*/
// IF PASSWORD NOT MATCHE

if(data[4]!=0||data[5]!=0||data[6]!=0||data[7]!=0)

{ delay(500);

delet();

lcd.setCursor(0, 0);

lcd.print(" ACCESS DENIED DENIED ");

tone(A2,335);

analogWrite(A0,1024);

delay(500);

noTone(A2);

analogWrite(A0,0);

lcd.setCursor(0, 0);

lcd.print(" ");}

/*==============================================================*/

if(q==6){delet();q++; t=4;}

void setup()

Serial.begin(9600);

lcd.begin(32,2);

lcd.clear();

lcd.setCursor(2,0);

pinMode(A0,OUTPUT);

pinMode(A1,OUTPUT);

void loop() {

char key = kpd.getKey();


if(i<4){

if (key){

lcd.setCursor(1, 0);

data[i]=key;

// lcd.print(data[i]);

i++;

if(t>=4){

if (key){

lcd.setCursor(1, 0);

data[t]=key;

t++;

q++;

repeat();

You might also like