0% found this document useful (0 votes)
29 views20 pages

Six Weeks Industrial Training Report

Uploaded by

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

Six Weeks Industrial Training Report

Uploaded by

budaleshivraj
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

A

REPORT
ON

“Six Weeks Industrial Training”

Submitted by
Mr. Omkar Katare
[Roll No: CO 335]

UNDER THE GUIDANCE OF


Mr. T. L. Patil
PROGRAM: COMPUTER ENGINNERING

Shanti Education Society’s

A. G. Patil Polytechnic Institute, Solapur.


DEPARTMENT OF COMPUTER ENGINEERING
NBA ACCREDITIED PROGRAMS
2024-2025
Shanti Education Society’s

A. G. Patil Polytechnic Institute, Solapur.


CERTIFICATE

Name of Course: Industrial Training.


This is to certify that the project report on “Six weeks Industrial Training” has been
Submitted by

Mr. Omkar Katare


[Roll No: CO 335]

Of Third Year Computer Engineering class in the partial fulfillment for the award of Diploma in
Computer Engineering program as per curriculum laid by the M.S.B.T.E., Mumbai during the
academic year 2024-2025.

Mr. T. L. Patil
(Mentor Signature and Name) (Program Coordinator, Comp. Engg. Dept.)

Dr. M.A. CHOUGULE


(Principal, A.G.P.P.I)
ABSTRACT

The objective of a practical training is to learn something about industries practically and
to be familiar with a working style of a technical worker to adjust simply according to
industrial environment. This report deals with the equipment their relation and their
general operating principle.
Python, an interpreted language which was created by Guido van Rossum, and released
in [Link] language supports both object oriented and procedural oriented approach.
Python is designed to be a highly extensible language. Python works on the principle of
“there is only one obvious way to do a task” rather than “there is more than one way to
solve a particular problem”. Python is very easy to learn and implement. The simpler
syntax, uncomplicated semantics and approach with which python has been developed
makes it very easier to learn. A large number of python implementations and extensions
have beendeveloped since its inception.
Training Covers six weeks industrial training in Python.
ACKNOWLEDGEMENT

At the outset I would like to acknowledge our grateful thanks to our mentor from
Department of Computer Engineering for his valuable guidance and suggestions for our
project entitled. We would like to express our thanks to Mr. T. L. Patil, Head of
Department of Computer Science and Engineering for their great moral support.

We are thankful to Honorable Principal Dr. M. A. Chougule, A. G. Patil Polytechnic


Institute, Solapur for providing necessary facilities for completion of this work.

Last but not least we would like to thank to our all staff and friends for their advice and
support.

Thank You
Mr. Omkar Katare [CO-335]
Page
Sr. No Content
No.
Organizational Structure
Chapter 1 2
of Industry

Chapter 2 Introduction of Industry 4

Types of Equipment Used


Chapter 3 6
in Industry

Chapter 4 Development Processes 7

Chapter 5 Testing of Procedures 8

Software Handling
Chapter 6 9
Product and Procedure

Practical Experience in
Chapter 7 10
Industry

Chapter 8 Coding 12

Short Description of the


Chapter 9 14
Project

1| P a g e
Chapter 1: Organizational Structure of Industry.

The organizational structure of an industry refers to the way companies and businesses within
that industry are organized, coordinated, and managed. There are several common types of
organizational structures that can be found within industries, each with its own advantages,
disadvantages, and characteristics.

1. Executive Management:
 CEO/Managing Director: Responsible for overall strategic direction and management.
 COO: Oversees daily operations and ensures the company's goals are met.

(Functional Organization Structure)


2. Technology and Development:
 CTO: Oversees technology strategy and development.
 Software Developers: Work on creating and maintaining software products and services.
 Quality Assurance: Ensures that products meet quality standards before release.

3. Sales and Marketing:


 Sales Team: Focuses on acquiring new clients and maintaining relationships with existing
ones.
 Marketing Team: Handles branding, advertising, and market research.

2| P a g e
4. Human Resources:
 HR Manager: Manages recruitment, employee relations, and organizational culture.
 Training and Development: Focuses on employee growth and skill development.

5. Finance Administration :
 CFO: Manages financial planning, risk management, and financial reporting.
 Accounting Team: Handles bookkeeping, invoicing, and payroll.

6. Customer Support and Service:


 Support Team: Assists clients with technical issues and service inquiries.
 Customer Success Managers: Work to ensure client satisfaction and long-term
relationships.

7. Project Management:
 Project Managers: Oversee projects from inception to completion, ensuring they meet
client expectations and are delivered on time.

The choice of organizational structure depends on factors such as the industry's nature, the
organization's size, goals, culture, and the level of complexity involved in its operations.
Additionally, industries might adopt a hybrid approach, combining elements from different
structures to meet their specific needs. As industries evolve, so do their organizational structures
in response to new challenges, technologies, and market dynamics.

3| P a g e
Chapter 2: Introduction of Industry/Organization.

The software industry refers to the sector of the economy that involves the development,
production, distribution, and maintenance of computer software. Computer software consists of
programs, applications, and systems that run on various computing devices, from personal
computers and smartphones to servers and embedded systems.
Key aspects of the software industry include:

 Software Development:
 Software Products:
 Software Services:
 Open-Source Software:
 Software as a Service (SaaS):
 Platform as a Service (PaaS):
 Software Distribution and Licensing:
 Software Maintenance and Updates:

The software industry has experienced rapid growth and innovation due to advancements in
technology and increased reliance on digital solutions. It plays a vital role in various sectors,
including finance, healthcare, entertainment, education, manufacturing, and more. As technology
continues to evolve, the software industry adapts to new trends, such as artificial intelligence,
cloud computing, mobile applications, and the Internet of Things (IoT), to create innovative and
impactful software solutions.

PYTHON:
Python is a high-level, interpreted, interactive and object-oriented scripting language.
Python is designed to be highly readable. It uses English keywords frequently where as other
languages use punctuation, and it has fewer syntactical constructions than other languages.
 Python is Interpreted
 Python is Interactive
 Python is Object-Oriented
 Python is Object-Oriented

4| P a g e
History of Python:
Python was developed by Guido van Rossum in the late eighties and early nineties at the National
Research Institute for Mathematics and Computer Science in the Netherlands.
Python is derived from many other languages, including ABC, Modula-3, C, C++, Algol-68,
SmallTalk, and Unix shell and other scripting languages.
Python is copyrighted. Like Perl, Python source code is now available under the GNU General
Public License (GPL).
Python is now maintained by a core development team at the institute, although Guido van Rossum
still holds a vital role in directing its progress.

Python Features:
 Easy-to-learn
 Easy-to-read
 Easy-to-maintain
 A broad standard library
 Interactive Mode

Skills:
You will need:
 An up-to-date knowledge and understanding of your employer's business and industry
needs, as well as the technical demands.
 To recognize the importance of customer focus and/or of serving the needs of the end user.
 Excellent communication skills, particularly the ability to communicate with staff who
aren't technically trained.
 The skill to take on a variety of tasks and pay attention to detail.
 Analytical and problem-solving ability.
 Teamwork skills and the ability to feel comfortable working with different teams, clients
and Groups of staff across an organization.

5| P a g e
Chapter 3: Types of Equipment Used in Industry.

 Personal Computer:

1. Use: A personal computer (PC) is a computing device designed for individual use.
It consists of various hardware components that work together to process
information, run software applications, and perform a variety of tasks.

2. Specification:

Sr. Name of
No. resources Specification Quantity Remark

1. Processor Intel(R) core (TM) i5- 1 Working


3410 CPU @3.5 GHz
2. Motherboard ASUS 1 Working
3. RAM 8 GB 1 Working
4. HDD 1 TB 1 Working
5. Keyboard Multimedia 1 Working
6. Mouse Optical 1 Working

6| P a g e
Chapter 4: Development Processes.

Downloading & Installing Python:

 Downloading:
1. If you don’t already have a copy of Python installed on your computer, you will
need to open up your Internet browser and go to the Python download page
([Link]
2. Now that you are on the download page, select which of the software builds you
would like to download. For the purposes of this article, we will use the most up
to date version available (Python 3.9.1) or above.
3. Once you have clicked on that, you will be taken to a page with a description of
all the new updates and features of 3.9.1, however, you can always read that while
the download is in process. Scroll to the bottom of the page till you find the
“Download” section and click on the link that says “download page.”
4. Now you will scroll all the way to the bottom of the page and find the “Windows
installer 32 bit.” If you want to download the 32-bit, feel free to do so. We believe
that even if you have a 64-bit operating system installed on your computer, the
64- bit is preferable. We say this because it will still run well and sometimes, with
the 64-bit architectures, some of the compiled binaries and Python libraries don’t
work well.

 Installing Python:
1. Once you have downloaded the Python 3.9.1, simply navigate to the download
location on your computer, double clicking the file when the dialog box pops up.
After starting the installer, one of two options may be selected.
2. Select “Install Now” by default settings.
3. Setup Path of variables:
Begin by opening the start menu and typing in “environment” and select the
option called “Edit the system environment variables.” When the “System
Properties” window appears, click on “Environment Variables…” Once you have
the “Environment Variables” window open, direct your focus to the bottom half.
You will notice that it controls all the “System Variables” rather than just this
associated with your user. Click on “New…” to create a new variable for Python.
4. Running The Python IDE:
Now that we have successfully completed the installation process and added our
“Environment Variable,” you are ready to create your first basic Python script.
Let’s begin by opening Python’s by pressing “Start” and typing “Python” and
selecting the “IDLE (Python 3.9 64-bit).”

7| P a g e
Chapter 5: Testing of Components with Quality Assurance
Procedure.

 Testing the Code by using Unittest:


1. Imports Python’s built-in unittest module.
2. Imports the Python function to be tested, <function_to_test> from the module in
which it’s defined, <module>.
3. Creates a test class (TestClass) that inherits from [Link] class.
4. Each of the tests that should be run should be defined as methods inside the test class.
5. Note: For the unittest module to identify these methods as tests and run them, the
names of these methods should start with test_.
6. The TestCase class in the unittest module provides useful assertion methods to check
if the function under test returns the expected values.

 Unittest output of the code:

8| P a g e
Chapter 6: Software Handling Product and Procedure.

 Specification:

Sr. Name of
No. resources Specification Quantity Remark

1. Software Visual Studio code v1.91 1 Working

2. Framework Django 5.0.7 1 Working

3. Language Python 3.12.4 1 Working

 Python Programming Language:


Python is a high-level, general-purpose, and very popular programming language.
Python programming language (latest Python 3.12.4) is being used in web
development, Machine Learning applications, along with all cutting-edge technology
in Software Industry.
Python language is being used by almost all tech-giant companies like – Google,
Amazon, Facebook, Instagram, Dropbox, Uber… etc.

9| P a g e
Chapter 7:Practical Experience in Industry.

Data Structures in Python:


 List:
The list is a most versatile datatype available in Python which can be written as a list of
commasseparated values (items) between square brackets. Important thing about a list is
that items in a list need not be of the same type.
Creating a list is as simple as putting different comma-separated values between square
brackets.
For example – list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5]
list3 = ["a", "b", "c", "d"]

 Tuples:
A tuple is a collection of objects which ordered and immutable. Tuples are sequences,
just like lists. The differences between tuples and lists are, the tuples cannot be changed
unlike lists and tuples use parentheses, whereas lists use square brackets.
Creating a tuple is as simple as putting different comma-separated values. Optionally you
can put these comma-separated values between parentheses also. For example –
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5)
tup3 = "a", "b", "c", "d"

 Dictionary:
Each key is separated from its value by a colon (:), the items are separated by commas,
and the whole thing is enclosed in curly braces. An empty dictionary without any items is
written with just two curly braces, like this: { }.
Keys are unique within a dictionary while values may not be. The values of a dictionary
can be of any type, but the keys must be of an immutable data type such as strings,
numbers, or tuples.
To access dictionary elements, you can use the familiar square brackets along with the
key to obtain its value. Following is a simple example:
dict = {‘Name’:’Zara’,’Age’:7,’Class’:’First’}
print(dict[‘Name’])

10| P a g e
Functions in Python:
A function is a block of organized, reusable code that is used to perform a single, related action.
Functions provide better modularity for your application and a high degree of code reusing. As
you already know, Python gives you many built-in functions like print(), etc. but you can also
create your own functions. These functions are called user-defined functions.

Defining a Function:
Simple rules to define a function in Python.
 Function blocks begin with the keyword def followed by the function name and
parentheses (()).
 Any input parameters or arguments should be placed within these parentheses. You can
also define parameters inside these parentheses.
 The first statement of a function can be an optional statement - the documentation string
of the function or docstring.
 The code block within every function starts with a colon (:) and is indented.
 The statement return [expression] exits a function, optionally passing back an expression
to the caller. A return statement with no arguments is the same as return None.

Syntax:
def functionname(parameters):
function_suite
return [expression]

Example:
def printer(str):
print(str)
return

Calling a Function:
Defining a function gives it a name, specifies the parameters that are to be included in the
function and structures the blocks of code.
Once the basic structure of a function is finalized, you can execute it by calling it from another
function or directly from the Python prompt.

11| P a g e
Chapter 8: Coding.

 Project Name: Virtual Mouse Project: Hand Gesture Recognition

import cv2
import mediapipe as mp
import pyautogui
cap = [Link](0)
hand_detector = [Link]()
drawing_utils =[Link].drawing_utils
screen_width, screen_height= [Link]()
index_y = 0
while True:
_, frame = [Link]()
frame = [Link](frame, 1)
frame_height, frame_width, _ = [Link]
rgb_frame = [Link](frame,cv2.COLOR_BGR2RGB)
output = hand_detector.process(rgb_frame)
hands = output.multi_hand_landmarks
if hands:
for hand in hands:
drawing_utils.draw_landmarks(frame, hand)
landmarks = [Link]
for id, landmark in enumerate(landmarks):
x = int(landmark.x * frame_width)
y = int(landmark.y * frame_height)

if id == 8 :
[Link](img= frame, center = (x,y), radius = 10, color= (0,255,255))
index_x= screen_width/frame_width * x
index_y = screen_height/ frame_height * y
[Link](index_x,index_y)
if id == 4:
[Link](img=frame, center=(x, y), radius=10, color=(0, 255, 255))
thumb_x = screen_width / frame_width * x
thumb_y = screen_height / frame_height * y
print('outside', abs(index_y - thumb_y))
if abs(index_y - thumb_y) < 30:
[Link]()
[Link](1)
[Link]('virtual mouse', frame)
[Link](1)

12| P a g e
 Output:

13| P a g e
Chapter 9: Short Description of the Project.

Project Title: Virtual Mouse Project: Hand Gesture Recognition


Description:

Introduction
This project aims to develop a virtual mouse controlled by hand gestures, offering an alternative input
method to traditional physical mice. By utilizing index and middle finger movements, users can
navigate a computer cursor and perform mouse clicks. This technology has the potential to enhance
accessibility and provide innovative user interaction possibilities across various applications.
Objectives
 Precise cursor control using index and middle finger gestures.
 Accurate simulation of mouse clicks through finger interactions.
 Real-time system operation for seamless user experience.
 User-friendly interface for easy configuration and interaction.
Methodology
Hand Detection and Tracking
Real-time video feed is captured from a webcam and processed to detect and track the user's hand.
The MediaPipe library is employed for robust and efficient hand landmark detection, providing
detailed finger positions essential for gesture recognition.
Gesture Recognition
The system recognizes two primary gestures:
 Cursor Movement: When both index and middle fingers are extended, their positions are mapped
to screen coordinates, controlling cursor movement.
 Mouse Click: A simulated mouse click is triggered when the index and middle fingertips touch.
Implementation
Technologies
 OpenCV: For video capture and image processing.
 MediaPipe: For real-time hand detection and tracking.
 PyAutoGUI: For simulating mouse actions.
 Python: As the primary programming language.
Challenges
 Real-time Performance: Maintaining smooth operation without significant lag is crucial for
optimal user experience.
 Accuracy: Achieving high accuracy in gesture recognition to minimize false positives and negatives.
 Lighting Conditions: Adapting to varying lighting conditions and complex backgrounds for
reliable hand detection.
 User Variability: Accounting for differences in hand size, shape, and gesture styles among users.
Results
The developed virtual mouse system demonstrates effective real-time hand tracking and gesture
recognition, enabling users to control the computer cursor and perform mouse clicks through intuitive
hand movements. Initial tests show promising results in terms of accuracy and responsiveness. The
system accurately differentiates between gestures and translates them into corresponding mouse
actions.
14| P a g e
Future Work
 Expanded Gesture Set: Incorporating additional gestures for more complex actions like drag-and-
drop or right-clicks.
 Machine Learning Models: Developing advanced machine learning models to further enhance
gesture recognition accuracy.
 User Studies: Conducting user studies to gather feedback and refine the system based on
user experiences.
 Cross-Platform Compatibility: Ensuring compatibility across different operating systems
and devices.
 Application Integration: Exploring integration with specific applications for tailored
functionalities (e.g., gaming, virtual reality).
Conclusion
The virtual mouse project showcases a promising approach to human-computer interaction. By combining
advanced computer vision and machine learning, the system offers an intuitive and accessible
alternative to traditional mouse input. Continued development and refinement have the potential to
make this technology a valuable tool for a wide range of users and applications.

15| P a g e
Bibliography

Website Visited:

1. [Link]
2. [Link]
3. [Link]

Reference Books:
1. Think Python
2. Fluent Python
3. Python Cookbook

16| P a g e

Common questions

Powered by AI

Python provides significant benefits for machine learning applications, including a broad range of libraries, like TensorFlow and PyTorch, which simplify the implementation of complex machine learning algorithms . Its easy-to-learn syntax and readability allow quick prototyping and deployment, essential in fast-paced tech environments . However, Python's limitations include slower execution speeds compared to languages like C++, potentially impacting performance in time-sensitive or high-volume data processing tasks . Additionally, the global interpreter lock (GIL) can hinder multi-threaded performance, posing a challenge for developers in achieving efficient parallel processing .

Python offers several advantages for software development across various sectors. It is easy to learn and use, making it accessible to developers, which accelerates development processes . Python's extensive libraries, such as those for data analysis and machine learning, are particularly beneficial in sectors like finance and healthcare, where processing large datasets is common . However, Python's performance can be a disadvantage for high-load applications due to its slower execution speed compared to compiled languages like C++ . Additionally, Python's dynamic typing can lead to runtime errors, which need careful handling .

Python's open-source nature significantly impacts its adoption by large technology companies for applications in web development and machine learning. Being open-source means Python's source code is freely available for modification and distribution, fostering a large community of developers who contribute to its libraries and frameworks . This community-driven development has led to the creation of comprehensive libraries like TensorFlow and Flask, which are instrumental in machine learning and web development, respectively . Companies like Google and Facebook leverage these resources to build efficient, scalable, and innovative solutions, thereby enhancing Python's appeal and widespread adoption .

Data structures like lists and dictionaries in Python significantly enhance software development efficiency and flexibility. Lists allow developers to maintain ordered collections of data with varied types, facilitating operations like sorting and filtering without concern for data type homogeneity . Dictionaries provide a mechanism for storing paired keys and values, enabling rapid data retrieval and manipulation by key, which is particularly useful in applications requiring quick data access and modification . These structures' versatility and ease of use enable developers to efficiently manage and manipulate data, increasing overall development productivity .

The organizational structure of a company within the software industry plays a crucial role in its adaptability to new market dynamics and technologies. A functional organizational structure, with distinct executive, technology, and development departments, can facilitate quick decision-making and streamlined implementation of new technologies like AI and IoT . However, this structure can also create silos, hindering cross-departmental collaboration which is crucial for integrating novel technologies. Adopting a hybrid structure can provide flexibility, allowing companies to respond rapidly to technological advancements while maintaining operational efficiency .

Developing real-time hand gesture recognition systems like the Virtual Mouse Project involves several challenges, including maintaining smooth performance without lag, achieving high accuracy in gesture recognition, and adapting to varying lighting conditions and user differences . These challenges were addressed by utilizing advanced libraries such as MediaPipe for robust hand detection, which provided detailed and efficient tracking of hand landmarks . The project also employed PyAutoGUI to simulate mouse actions, ensuring responsiveness and accuracy, while optimization for different lighting and environments was achieved through adaptive algorithms .

The adoption of AI and cloud computing in the software industry drives the evolution of organizational structures by necessitating more fluid and agile arrangements. AI and cloud technologies require cross-disciplinary expertise and foster an environment of rapid iteration and scalability . Consequently, organizations often adopt a matrix or hybrid structure to facilitate collaboration among different departments like development, operations, and data science . This enables companies to adapt swiftly to technological advances and streamline the deployment of AI and cloud-based solutions, thereby enhancing innovation and operational agility .

The Chief Technology Officer (CTO) plays a pivotal role in the strategic implementation of new technologies within the software industry. The CTO is responsible for overseeing the company's technology development and ensuring that technology strategies align with business goals . By evaluating and integrating emerging technologies, such as AI and cloud computing, the CTO can drive innovation and maintain the company's competitive edge . The CTO's impact also extends to fostering a culture of continuous learning and adapting to technological trends, which is crucial for maintaining relevance in a rapidly evolving industry .

Hybrid organizational structures combine elements from various traditional structures, such as functional, divisional, and matrix structures, to create a more versatile framework that meets specific organizational needs . In the software industry, this can mean integrating cross-functional teams for project management while maintaining a clear hierarchical decision-making process for strategic direction. The primary benefit is enhanced flexibility, allowing organizations to swiftly adapt to technological changes and market demands. Hybrid structures also promote cross-departmental collaboration, crucial for integrated development projects and innovation .

Python's unittest module provides several advantages for testing code in software development projects. It offers a robust framework for automating testing processes, allowing developers to easily write test cases and verify that code behaves as expected . The module includes assertion methods to test for specific outputs, making it versatile for various testing scenarios . By automating tests, unittest helps maintain code quality over time by quickly identifying regression or integration errors, thus streamlining the development cycle and ensuring consistency and reliability in software products .

You might also like