-
1:
Start ()
-
2:
Step 1: While (mission has not started) {}
-
3:
{Starts Main Mission Mode (MMM)}
-
4:
Step 2: If (mission has ended)
-
5:
{End ()}
-
6:
Else
-
7:
{Navigate follow defined mission}
-
8:
{Select the right AI image recognition source (AIsource) through SAAO}
-
9:
{Acquire frames from 4 cameras and send to AIsource}
-
10:
{Get the answer of every frame and add label with camera position (bow, stern, starboard, port) of detected vessel, called camera position (CP)}
-
11:
If ((accuracy of detected vessel > acceptable limits) AND (type of vessel == classified as potential risk))
-
12:
{Go to step 3}
-
13:
Else
-
14:
{Go to step 2}
-
15:
Step 3:
-
16:
{Starts Fixed Buoy Mode (FBM)}
-
17:
{Get the answer of every frame and add label with camera position (bow, stern, starboard, port) of detected vessel, called camera position (CP)}
-
18:
Switch (CP)
-
19:
Case (CP == bow)
-
20:
If (accuracy < accuracy results acceptable)
-
21:
{Discard detected vessel. No risk.}
-
22:
{Go to step 2}
-
23:
Else
-
24:
{Set new heading pointing detected vessel. Keep current position and heading}
-
25:
{Start study of target behavior by analyzing bounding box of images for a specific period}
-
26:
If (Detected vessel is in the same position)
-
27:
{Discard detected vessel. No risk}
-
28:
{Go to step 2}
-
29:
Else
-
30:
{Target vessel in the same position. Risk (anchoring, fishing)}
-
31:
{Go to step 4}
-
32:
Case (CP == stern)
-
33:
{Vehicle turns +180°}
-
34:
{Go to step 3}
-
35:
Case (CP == starboard)
-
36:
{Vehicle turns +90°}
-
37:
{Go to step 3}
-
38:
Case (CP == port)
-
39:
{Vehicle turns −90°}
-
40:
{Go to step 3}
-
41:
Default:
-
42:
{Go to step 2}
-
43:
Step 4:
-
44:
{Start Tracking Mode (TM)}
-
45:
{Navigate to track target vessel}
-
46:
{Acquire new frame from bow camera and send to AIsource}
-
47:
{Calculate the bounding box center and vessel position in order to fix heading while tracking}
-
48:
If (LiDAR detects vessel at 20 m)
-
49:
{Stop navigation. Target reached}
-
50:
{Go to step 5}
-
51:
Else If (vessel leaves integral reserve while tracking)
-
52:
{Target not reached}
-
53:
{Go to step 2}
-
54:
Else
-
55:
{Go to step 4}
-
56:
Step 5:
-
57:
{Starts Inspection Mode (IM)}
-
58:
{Acquire new frame from bow camera and send to AIsource}
-
59:
{Calculate the bounding box center and vessel position in order to fix heading and keep distance}
-
60:
While (Target vessel is stopped)
-
61:
{Record videos, save vessel’s position, obtain additional information, send data and alerts to cloud station}
-
62:
If (Vessel starts moving)
-
63:
{Stage finished. Information collected}
-
64:
{Go to Step 2}
-
65:
Security Step:
-
66:
If (Energy == 25%)
-
67:
{Return back to port area. Send alert to cloud station}
-
68:
If (Energy == 50%)
-
69:
{Send alert to cloud station}
-
70:
End ()