This document summarizes a presentation about developing an automatic boat detection and recognition camera system at a yacht club. The presentation discusses developing various neural network models to identify boats entering and exiting the marina. The best performing model achieved 99.39% accuracy classifying boats into categories like yachts entering or exiting. Feedback from the yacht club on the prototype system was positive.
4. INTRODUCTION
S U B T I T L E G O E S H E R E
• My placement company Southern Logic has been working with Poole Yacht Club as one of their key clients for
over 10 years providing bespoke solutions covering
• databases, servers, EPOS, digital signage and more
• I had the privilege of revitalising the existing Southern Logic database system for Poole Yacht Club as one of the
projects I worked on in 2020/21 and established working
• relationships with members of the PYC office building trust with successful deployments as a full-stack developer
• The start of every software engineering project is a problem, and the one which this project revolves around is
PYC not knowing which of the boats in the marina are going in or
• out at which times.
• The PYC comitee proposed a solution of fitting tracking devices to each member's boat, however SL company
principal and I were enthusiastic to pursue an AI driven solution.
• Having impressed PYC and SL with previous work, I was given the go ahead to develop the system I will be
discussing henceforth
Add a Footer 4
5. INTRODUCTION
• My industrial placement company Southern Logic has been working with Poole Yacht
Club as one of their key clients for over 10 years providing bespoke solutions covering
databases, their public website, servers, EPOS, digital signage and more.
• I had the privilege of revitalising the existing Southern Logic (SL) database system for
Poole Yacht Club (PYC) as one of the projects I worked on in 2020/21 and established
working relationships with members of the PYC office building trust with successful
deployments as a full-stack developer.
• The start of every software engineering project is a problem, and the one which this
project revolves around is PYC not knowing which of the boats in the marina are going
in or out at which times.
• The PYC committee proposed a solution of fitting tracking devices to each member's
boat, however, the SL company principal and I were enthusiastic to pursue an AI
driven solution.
• Having impressed PYC and SL with previous work, I was given the go-ahead to develop
the system that will be discussed henceforth and SL even assisted me in acquiring an
RTX 3060 Ti graphics card
5
6. REQUIREMENTS
• I was in the uniquely fortunate situation starting this project that there was no set of requirements
specified for this project so it could follow a development direction of my own choosing based on my
understanding of PYC’s needs
• Requirements gathering was even encouraged against by SL due to the client’s time it would take up on a
prototype solution, although I did manage to discuss this AI camera project’s potential with PYC staff whilst
having meetings about the database project.
• Having requirements given by the client does have its advantages as I learnt when presenting the system to
the PYC office staff, however the system is still flexible enough that additional features suggested and
requested can be incorporated.
• I knew from the start in October that the system would not be fully implemented with all intended features
in the 7 months given alongside 8 modules with coursework and exams so 2 tiers of aims were created –
highly achievable and stretch goals.
• The feedback overall was highly positive from Poole Yacht Club and ran along the lines of "more of the
same please" - i.e. meeting that all-important aim 2.1 detailed in the report whereby the system is able to
detect specific boats.
6
7. MODELS
Edge Impulse
<20% Average Precision
Classification classes:
“boat”, “ssr”, “0”, “1”, “2”, “3” “4” “5”,
“6”, “7”, “8”, “9”
RetinaNet with 6 classes
7
Standard Neural Network
RetinaNet with 1 class
30-70% AP
Classes:
“out_boat”, “in_boat”, “out_boat”
26.61% AP
Classes:
“out_yacht”, “in_yacht”, “out_sailboat”,
“in_sailboat”, “out_boat”, “in_boat”
99.39% AP
Classes:
“out_yacht”, “in_yacht”, “out_sailboat”,
“in_sailboat”, “out_boat”, “in_boat”
def boat_detection_model(num_classes):
my_input = Input(shape=(224,224,3))
x = Conv2D(32, (3,3),
activation='relu')(my_input)
x = MaxPool2D()(x)
x = BatchNormalization()(x)
x = Conv2D(64, (3,3), activation='relu')(x)
x = MaxPool2D()(x)
x = BatchNormalization()(x)
x = Conv2D(128, (3,3), activation='relu')(x)
x = MaxPool2D()(x)
x = BatchNormalization()(x)
x = GlobalAvgPool2D()(x)
x = Dense(128, activation='relu')(x)
x = Dense(num_classes,
activation='softmax')(x)
return Model(inputs=my_input, outputs=x)
8. TITLE GOES HERE
S U B T I T L E G O E S H E R E
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut
gravida eros erat. Proin a tellus sed risus lobortis sagittis
eu quis est. Duis ut aliquam nisi. Suspendisse vehicula mi
diam, sit amet lacinia massa sodales ac. Fusce
condimentum egestas nunc a maximus. Quisque et orci
purus. Proin dolor mi, ultrices sit amet ipsum placerat,
congue mattis turpis. Donec vestibulum eros eget mauris
dignissim, ut ultricies dolor viverra. Phasellus efficitur ante
nec sem convallis, in ornare est accumsan. Lorem ipsum
dolor sit amet, consectetur adipiscing elit. Ut gravida eros
erat. Proin a tellus sed risus lobortis sagittis eu quis est.
11%
19%
17%
29%
24%
CHART TITLE
Jan Feb Mar Apr May
Add a Footer 8
9. 9
TITLE HERE
YOUR HEADING YOUR HEADING YOUR HEADING YOUR HEADING
Place content here Place content here Place content here Place content here
Place content here Place content here Place content here Place content here
Place content here Place content here Place content here Place content here
Place content here Place content here Place content here Place content here
Place content here Place content here Place content here Place content here
Place content here Place content here Place content here Place content here
Place content here Place content here Place content here Place content here
Place content here Place content here Place content here Place content here
Add a Footer 9
10. Add a Footer
YOUR TITLE GOES HERE
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Ut gravida eros erat. Proin a tellus sed risus lobortis sagitti
10