Antenna module for acoustic point defence system and acoustic system comprising said module

The modular sonar structure with transducer arrays and a local control unit addresses the inflexibility of existing systems, providing flexible and adaptive underwater threat detection and classification.

WO2025172871A1PCT designated stage Publication Date: 2025-08-21LEONARDO SISTEMI INTEGRATI

Patent Information

Application Number
PCT/IB2025/051512
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-15
Filing Date
2025-02-13
Publication Date
2025-08-21

AI Technical Summary

Technical Problem

Existing sonar systems for underwater target detection and classification are inflexible and require customization for different applications, limiting their ability to provide wide-area coverage and protection against underwater threats.

Method used

A modular sonar structure comprising arrays of electroacoustic transmitting and receiving transducers housed in a watertight container, with a local control and calculation unit, allowing flexible deployment and integration with a remote control unit for extended coverage and adaptive scanning.

Benefits of technology

Enables flexible and customizable sonar systems for various point protection applications, optimizing detection capabilities and coverage range without constraining installation, and supporting automatic target tracking and classification.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IB2025051512_21082025_PF_FP_ABST
    Figure IB2025051512_21082025_PF_FP_ABST
Patent Text Reader

Abstract

The main object of the invention is an antenna module for an acoustic point defence system (SAD) and an acoustic system comprising said module. The antenna module comprises at least one array of electroacoustic transmitting transducers (TX) and at least one array of electroacoustic receiving transducers (RX). The arrays of transmitting transducers and the arrays receiving transducers have the characteristic of being housed in a watertight container adapted to be submerged in water when the module is in operation, for example by means of a hoist or winch device (SMMR - Launching and Recovery System). The container has watertight accesses, for example via watertight connectors, for at least one cable for a power supply signal, connected or connectable with a power supply unit external to the container, and for at least one cable for a data signal, connected or connectable to a remote control unit adapted to send commands and receive target detection states and / or signals. The antenna module comprises a local control and calculation unit housed inside the container, which local control and calculation unit is equipped with an input for the power supply signal and a port for the data signal, and is interfaced with the arrays of transducers for controlling the signal transmitted by the arrays of transmitting transducers and processing the signals received by the arrays of receiving transducers on the basis of commands received by the data port.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Antenna module for acoustic point defence system and acoustic system comprising said module

[0002] The present invention relates to the field of sonar systems for the detection and classification of underwater targets.

[0003] A sonar system is a system that uses arrays of acoustic transmitting transducers that, suitably excited, generate a focused acoustic field according to a direction that can be set. By varying said direction of focus, it is possible to scan the surrounding space and receive return echoes from any targets present in the generated acoustic field.

[0004] By taking the echo signal through arrays of receiving transducers, after appropriate reconstruction operations of the received acoustic beam using so-called beamforming techniques, it is possible to obtain information relating to the position of targets in terms of both distance and lateral angle and display said information on a screen. Older systems show the distance only with an oscilloscope-like mode called A- Scan, while modem sonars offer a complete spatial view, called PPI. With further processing that takes advantage of the Doppler effect, that is, the variation in the frequency of the received signal as the speed of the target varies, sonar systems are also able to detect the longitudinal speed of the targets.

[0005] The sonar systems currently on the market are mostly used by underwater units for safe navigation or by floating units with basically echo sounding function.

[0006] A particularly interesting field of application of sonar is that of acoustic point defence systems (SAD), for example, for the protection of ships at anchor or offshore platforms or port infrastructure to protect against terrorist attacks carried out by divers or other underwater threats. The antennas and processing devices of these systems are mostly ad hoc structures mounted in the hull of the vessel or in the installation to be protected.

[0007] On the other hand, in these specific applications, the sonar system must be able to provide information that covers a very wide area that comprises not only the body of water underneath the ship or the installation, but also a certain transversal extension in order to allow a prompt detection of any threats. This requires a certain flexibility of installation, at least in terms of positioning the supports for the transmitting and receiving transducers in order to optimize the coverage range.

[0008] Hence the need for a flexible sonar structure that allows maximum protection to be obtained without constraining to the vessel or structure to be protected.

[0009] Therefore, the object of the present invention is to provide a general-purpose modular sonar structure that can be used in the most varied point protection applications without the need for any customization except in the number of modules to be used.

[0010] The invention achieves the object with an antenna module for an acoustic point defence system (SAD), which module comprises at least one array of electroacoustic transmitting transducers (TX) and at least one array of electroacoustic receiving transducers (RX). Arrays of transmitting transducers and arrays of receiving transducers have the characteristic of being housed in a watertight container adapted to be submerged in water when the module is in operation, for example by means of a hoist or winch device (SMMR). The container has watertight accesses, for example via watertight connectors, for at least one cable for a power supply signal, connected or connectable with a power supply unit external to the container, and for at least one cable for a data signal, connected or connectable to a remote control unit adapted to send commands and receive target detection states and / or signals. The antenna module comprises a local control and calculation unit housed inside the container, which local control and calculation unit is equipped with an input for the power supply signal and a port for the data signal, and is interfaced with the arrays of transducers for controlling the signal transmitted by the arrays of transmitting transducers and processing the signals received by the arrays of receiving transducers on the basis of commands received by the data port.

[0011] The local control and calculation unit typically comprises a processor configured to read commands from the data port and send processing states and / or results to said data port so as to be able to control the arrays of transmitting transducers on the basis of the received commands and send information about the detected targets.

[0012] The antenna module according to the invention is practically a micro sonar system capable of managing both the generation of the transmission signals and the detection of the echoes coming from the targets. The remote control unit can thus limit itself to controlling the antenna module and reading the information on the detected targets although, of course, it can advantageously perform further functions such as, for example, automatic tracking, display and classification of the targets. In this way, multiple antenna modules can be used to extend the coverage range by simply dropping multiple antenna modules into the sea and programming the remote control unit to manage those modules by merging the data from them.

[0013] The power supply is typically provided by dedicated battery groups for each antenna module, but it is also possible to use a single battery group that provides power to multiple antenna modules, for example if these are dropped at sea at close range although this solution is less preferable, as a failure on one module could invalidate the operation of the entire system.

[0014] Thanks to the watertight construction of the container housing the components of the antenna module and the connectors associated with it for picking up / injecting signals from / into the module itself, it is possible to position the antenna module at different depths to optimize the detection capabilities according to the different operating conditions. The antenna module may advantageously comprise a transmission signal generation unit and a switch unit (TSM) piloted by the local control and processing unit so that a specific transmission signal generated by the generation unit may be directed to one or more transmitting transducers.

[0015] When the arrays of transmitting transducers comprise angularly offset transducer staves, the switching unit may be used to excite a specific transducer stave based on commands sent by the local processing and control unit. For example, the local control and processing unit may be configured or configurable to activate one or more transducer staves either simultaneously or sequentially so as to generate a scan of acoustic beams oriented in different directions.

[0016] The transmission signal generation unit may advantageously comprise one or more amplifier drive circuits (PWA - PoWer Amplifier), preferably with differential output, for converting a waveform output from the local control and processing unit into a drive signal of one or more transmission transducer staves.

[0017] In a preferred embodiment, there are two driving circuits for generating a pair of driving signals of a pair of transmitting transducer staves.

[0018] As for the container, in one embodiment, it has a substantially cylindrical shape formed by at least one first and at least one second separate hollow cylindrical element, stacked on each other longitudinally by means of a connecting element and closed at the ends, respectively, by a bottom and a closing cover, with the transmitting transducers arranged in longitudinally arranged staves angularly offset on the surface of the first cylindrical element and the receiving transducers arranged in longitudinally arranged staves angularly offset on the surface of the second cylindrical element.

[0019] The connecting element, which is, for example, in the form of a disc equipped with an opening for the passage of cables between the two cylindrical elements, can advantageously act as a support for a box- shaped element, for example with a cuboid shape, adapted to house the switching unit (TSM - Tx Switching Module).

[0020] The bottom can be advantageously used to house the driving circuits of the transmitting transducers while the cover can act, in addition to being a closing element, also as a support for a box-shaped element, for example of a prismatic shape, suitable for housing the electronics of the local control and calculation unit. The cover, the bottom and the cylinder itself can also have heatsink functions.

[0021] In one embodiment, the transmitting transducers are arranged in n groups of two or more staves arranged in succession along a cylindrical surface so that the angular distance between a stave of one group and the corresponding stave of the immediately following or preceding group is 360° / n.

[0022] The groups of transmitting staves may, for example, be four in number with each group comprising a first and a second stave angularly offset by 45° and differently inclined, for example by 2.5°, with respect to the longitudinal axis of the container.

[0023] In this configuration, the local control and calculation unit may be configured to drive the first or second stave of all stave groups with nonoverlapping close pulses so as to cover with four pulses a 360° scan on a plane transverse to the container axis or to alternately drive the first or second stave of the odd stave groups and then the first or second stave of the even stave groups, or vice versa, so as to cover with two pulses a 360° scan on a plane transverse to the container axis.

[0024] As for the receiving transducers, these can be arranged in m staves, for example 64 staves, of transducers arranged longitudinally on a cylindrical surface, one after the other, angularly evenly spaced, until they cover an angular extension of 360°.

[0025] Each transducer stave is advantageously in electrical connection with a corresponding acquisition channel input to the local control and processing unit by means of an amplifier.

[0026] The local control and processing unit may advantageously comprise A / D converters for the digital conversion of the signals from the receiving translators and a receiving acoustic beamformer unit for the detection of the echoes received from the receiving transducers.

[0027] The antenna module may comprise one or more sensors, such as, for example, a compass, a pressure gauge, an inclinometer and the like, housed in the container and connected with the local control and processing unit for sending status information for the module via the data port. Among these sensors, an important role is played by the sensor for the detection of flooding that is adapted to signal the loss of impermeability of the container. The flooding detection sensor can be connected to the local control and processing unit or with a watertight connector for direct reading through a remote surface detection device adapted to interrupt the power supply when flooding of the container is detected. The configuration in which the flood detection sensor is connected to both the local control and processing unit and the connector is also possible.

[0028] When the antenna module is connected with an external power supply unit, the signal from the flooding sensor can be connected to the input of a detection unit in the power supply unit capable of controlling an emergency switch device so as to disable the power supply to the module when a flooding situation of the module container is detected.

[0029] According to another aspect, the invention relates to an acoustic point defence system (SAD) comprising a remote control unit interfaced to a communication unit, such as for example a router or a switch of an Ethernet network, a power supply unit, for example with rechargeable batteries, a hoist or winch device and an antenna module according to the invention. The input for the power supply signal of the antenna module is connected to the power supply unit through a power cable while the data port of the antenna module is in communication with the control unit through a data cable, directly or through a subunit in wired or wireless communication with the remote control unit. The hoist or winch device can be advantageously used for launching, recovering and supporting the antenna module in operation. Any lifting device can be used for the purpose. It may also be possible to place the antenna module on the seabed or to fix it on a structure to be fixed in turn on a stable support. In this case, the hoist or winch device is used for the sole purpose of putting the module to sea and recovering it.

[0030] In a particularly advantageous configuration, the system comprises a plurality of antenna modules according to the invention and a plurality of power supply units connected to said modules. Each module is in communication with the remote control unit which is advantageously configured for the control of each module and the management of the information coming from each module so as to obtain a modular extension of the target detection area.

[0031] The remote control unit may advantageously comprise a processor unit configured to process the data coming from the antenna module(s) for tracking and / or classifying the targets detected by said antenna modules and output the results of said processing.

[0032] Further features and improvements are the subject of the subclaims.

[0033] The features of the invention and the advantages derived therefrom will become more apparent from the following detailed description of the accompanying figures, wherein:

[0034] Fig. 1 shows the high level block diagram of an acoustic point defence system (SAD) according to an embodiment of the invention.

[0035] Fig. 2 shows a block diagram of a detail of the system from the preceding figure.

[0036] Fig. 3a shows an example of an antenna module assembled according to an embodiment of the invention.

[0037] Fig. 3b shows an exemplary exploded view of the module of the previous figure disassembled.

[0038] Fig. 3c shows the exemplary detail of the upper closure cover in the previous figure that supports the Signal & Data Processing Module (SDPM).

[0039] Fig. 4 shows an exemplary top view of the receiving staves mounted on the antenna of the previous figures. Fig. 5 shows an exemplary top view of the transmission staves mounted on the antenna of the previous figures.

[0040] Fig. 6 shows the block diagram of the acquisition and calculation board according to an embodiment of the invention.

[0041] Fig. 7 shows the block diagram of the connections between amplification unit and switching unit.

[0042] Fig. 8 shows the functional diagram of the switching unit.

[0043] Fig. 9 shows the block diagram of the processing and the functions allocated to the console.

[0044] Fig. 10 shows the block diagram of the internal connections to the antenna module.

[0045] Figure 11 shows four examples of a trace on a school of fish, generated by the sonar system in the simulation of a passing school.

[0046] Figure 12 shows two examples of a trace on a single fish, generated by the system in the simulation of a passing fish.

[0047] Figure 13 shows an example of choosing the initial direction of movement of the passing vessel with respect to the initial point and position of the sonar in the simulation of a passing vessel.

[0048] Figure 14 shows two examples of a trace on a passing vessel, generated by the sonar system in the simulation of the movement of the vessel.

[0049] Figure 15 shows an example of regions in which the diver's initial point (blue area) and their possible turning point (in the circular corona between 100 and 300 m from the sonar system, within the 120° angle indicated) can be found in the simulation of a diver.

[0050] Figure 16 shows four examples of a trace of a diver, generated by the sonar system during target movement simulation.

[0051] Figure 17 shows the performance of the anomaly detection system (one-class classification - D1 ) with training set free of threatening traces (T1 ), evaluated by 5 random repetitions of the training.

[0052] Figure 18 shows the performance of the threat detection system (D2) with unbalanced training set (T2), evaluated by 5 random repetitions of the training. The curves show the PD (probability of detection), the PFA (probability of false alarm) and the OA (overall accuracy).

[0053] Figure 19 shows the performance of the target classification system (C1 ) with unbalanced training set (T2), evaluated through 5 random repetitions of the training. The curves show the OA (overall accuracy), PD (probability of detection) and PFA (probability of false alarm).

[0054] Figure 20 shows the performance of the target classification system (C2) with full training set (T3). The curves show the OA (overall accuracy), PD (probability of detection) and PFA (probability of false alarm).

[0055] With reference to Fig. 1 , the SAD system according to an embodiment of the invention comprises the following units:

[0056] • TX / RX 1 antenna subsystem, which can be submerged to an adjustable depth;

[0057] • Antenna Launching and Recovery System (SMMR) 2;

[0058] • Battery-operated power supply unit 3;

[0059] • Operator console for the command and control of SAD 4;

[0060] • Connection cables 5, 6 between the submerged antenna 1 and the surface components 3, 7;

[0061] • Ethernet router 7, 8 to allow the network connection of all subsystems that need to communicate with each other.

[0062] As shown in detail in Fig. 2, the antenna subsystem 1 comprises a plurality of components housed in a watertight container (Cylindrical Underwater Container). Such components include the receiving transducer array 101 (RX Transducer Array), the transmitting transducer array 201 (TX Transducer Array), the SAC 301 acquisition and calculation board (Signal Data Processing Module SDPM), the Power Amplifiers 401 (Power Amplifier), the Switching Unit 501 (TX Switching Module TSM), various sensors 60T, 60T (Auxiliary Sensors), the interconnecting cables between the equipment inside the antenna container (Antenna Hamess).

[0063] The power supply unit 3 is formed by a nautical container (Nautical Container for Batteries NCB) in which a 12Vdc battery pack 103, a 48Vdc battery pack 203 (12VDC / 48VDC Batteries) and an antenna flooding management module 303 (Flood Alert Module) are housed.

[0064] Console 4 is typically a remotely located PC that communicates with the various components of the SAD system via LAN or WAN, typically Ethernet. The connection can, of course, be made in any way by also exploiting, for example, wireless networks and protocols of any kind. Only the final communication section to the antenna module should be wired for obvious considerations regarding radio signal propagation in water. To this end, for example, an Rj45 port of a switch or router 8 on board the vessel or platform can be used for the interface of the antenna 1 with the main LAN or WAN network.

[0065] The detailed characteristics of the various hardware components of the SAD system according to an embodiment of the invention shall now be considered.

[0066] Cylindrical underwater container

[0067] The purpose of this component is to house all the items necessary for the management of the transmission and the acquisition and processing of the return echoes of the antenna module.

[0068] The casing is made in a cylindrical shape and from material suitable for supporting, with an appropriate margin, the pressure corresponding to a maximum depth of 20 metres. In fact, it was considered unnecessary to size the casing to withstand greater depths, as the simulations showed that the best performance is obtained with the antenna positioned at a depth in the range of 3-15 metres. Obviously, this does not prevent the container from being used at greater depths with the appropriate dimensional adjustments.

[0069] The Cylindrical Underwater Container is equipped with: • Vacuum test valve

[0070] • Stabilization mechanics, to avoid rotary movements of the cylinder as much as possible

[0071] The casing is sized to house the following items:

[0072] • RX T ransducers Array 101

[0073] • TX Transducers Array 201

[0074] • Signal & Data Processing Module 301

[0075] • Two-channel 401 Power Amplifier

[0076] • TX Switching Module 501

[0077] • Compass 601"

[0078] • Pressure Gauge 60T

[0079] • Inclinometer 601"

[0080] • Flood Sensor 601

[0081] • Antenna Hamess 701 (Connection wiring between the items and to the Board).

[0082] The casing has, for example, a height of 1240 mm and a maximum diameter of 280 mm

[0083] In Fig. 3a shows a pictorial representation of the realization of the RX / TX Antenna, while in Fig. 3b, in schematic form, the main modules that make this up are shown, with the exception of the cables to the Board and the accessory sensors (compass, inclinometer, pressure gauge, flood sensor) as they are of such dimensions as not to alter the depicted arrangement.

[0084] Allocation of units in the Antenna module

[0085] In Fig. 3b, starting from the bottom, the units that are housed inside the antenna module are shown:

[0086] • Bottom 11 of the TX antenna with the amplifier subassembly (PWA, PoWer Amplifier) mounted, which is composed of 2 amplifier channels 401 and two transformers 801 and has the task of driving the 8 TX transducer staves 201 . The PWA is screwed onto the bottom 11 which, in addition to hermetically closing the cylinder 1 , also performs the function of a heatsink. The possibility of making a thermal connection between PWA and cylinder is not excluded. On the PWA module there are connectors to connect the TSM 501 , for power supplies and to communicate with the SDPM 301. In the configuration shown in the figure, the PWA is shown in the form of a cylinder of about 200 mm diameter and about 200 mm height.

[0087] • Cylinder section where the TX staves 201 are positioned (in Fig. 3b the seats 121 where 8 TX staves 201 are housed are shown, spaced by 45°, but not the staves themselves, which are visible in Fig. 3a).

[0088] • Support diaphragm 13 on which the TSM 501 is screwed. The diaphragm 13 is shown as a disc with a central opening, but it may also have different shapes and openings. However, it must allow the TSM 501 to be fixed by means of screws, and leave space for the cables to pass between the two sections of the antenna. The TSM 501 was shown as an example in the form of a cuboid 120 mm x 120 mm in base and 80 mm in height.

[0089] • Cylinder section 14 where the RX staves 101 are located (in Fig. 3b shows the cutout of the entire cylindrical section where the 64 RX staves 101 will be housed, but not the staves themselves which are visible in Fig. 3a where the mounted antenna is shown).

[0090] • RX antenna cover 15 with SDPM 301 mounted. The SDPM is screwed onto the cover which, in addition to hermetically closing the cylinder, also performs the function of a heatsink. The eyebolts (not shown), which are fixed on the cover for supporting the antenna and which are in contact with water during commissioning at sea, also contribute to the dissipation of the SDPM 301. However, the possibility of making a thermal connection between the SDPM and the cylinder is not excluded, for example by means of wedge-locks which, by means of a screwing action, "push" one side of the box in contact with the inner surface of the cylinder, or by means of "terraces" welded internally to the cylinder, in such a position that the SDPM "almost" rests on them after closing the cylinder with the cover. Heat conduction can be achieved through the interposition of a Thermal Pad, which also has the function of recovering the tolerance of the machining. On the SDPM 301 there are connectors to connect the preamplifiers 901 , for the power supplies and to communicate with the PWA module 401 , with the TSM 501 and with the auxiliary sensors 601', 601". These figures do not show the connectors, the auxiliary sensors or even the internal and external connection cables, nor do they show the sealed passages for the connection cables to the shipboard, which must be provided in the cover, in appropriate positions. A possible positioning of the connectors of the SDPM 301 and the through holes on the cover is shown in Fig. 3c, where only the detail of the SDPM module 301 fixed to the antenna cover 15 is shown. In the figure, it is possible to distinguish:

[0091] • The 3 holes 151 through which pass, via the sealing cable gland, the cables that connect the antenna to the board. In a preferable alternative solution, watertight connectors can be used, thus avoiding having umbilical cables permanently attached to the antenna

[0092] • The lateral supports 152, located at the top of the SDPM 301 , which exemplify the mechanical system having the dual purpose of allowing the module to be fixed to the cover, by means of screws not shown here, and of promoting the dissipation of heat towards the cover itself.

[0093] • Three connectors 153, connected to the SAC board inside the module, protruding from the wide face of the SDPM 301 , to connect: power supply, Ethernet, modules inside the antenna. For this connection, a soldered connector can advantageously be used on the SAC board coming out from the lower face of the box.

[0094] • A connector 154, protruding from the lower narrow face of the SDPM, for connection to the preamplifiers 901 , for example using a "comb" connector made directly on the SAC board inside the module. Alternatively, four soldered connectors can be advantageously used on the SAC board coming out from the lower face of the box.

[0095] RX Transducers Array In the embodiment shown, this component consists of 64 RX Channels. Each RX channel is in turn made up of a stave composed of 12 elementary transducers of the Tonpilz type, added together. The 64 staves are arranged vertically on the side surface 14 of the cylindrical casing 1 dedicated to the transducers as shown in Fig. 4. In this figure the 64 staves of RX sensors 101 are shown in a position that is purely indicative and can be widely varied to optimize performance and internal connections to the antenna.

[0096] By way of example and not limitation, the RX array may have the following characteristics:

[0097] - Each RX stave is made with 12 Tonpilz transducers, added together.

[0098] - Distance between the acoustic centres of the adjacent stave transducers: equal to A / 2 calculated at the frequency of 70 kHz.

[0099] - Tilt of the RX staves (angle with respect to the vertical axis of the cylinder) = 0°.

[0100] - Working frequency: 60-80 kHz band

[0101] - Vertical Plane Directivity: + / - 4.250

[0102] - Horizontal Plane Directivity: + / - 45°

[0103] - Each stave will have inside it a preamplifier with differential output

[0104] - Each stave preamplifier, or group must have an adequate input protection diode

[0105] - Operating temperature of the preamplifiers: minimum range 0- 50°C

[0106] - Sensitivity (hydrophone + amplifier): -160 dBV / uPa + / -1 dB in the band [60-80 kHz]

[0107] - High-pass filter with 12dB / octave slope and with a cutoff frequency of approx. 40 kHz (TBC)

[0108] - Low-pass filter with slope 12dB / octave with cutoff frequency of approx. 100kHz (TBC) The staves are numbered as indicated in Fig. 4. A visible mark is appropriately affixed to the external surface of the cylinder that allows the CHO stave to be easily identified.

[0109] TX Transducers Array

[0110] This component, in the embodiment in question, consists of 8 groups of Tonpilz transducers, arranged in staves of 20 transducers each or installed in 20 cylindrical housings made of suitable metal support. As shown in Fig. 5, the staves, or groups, are mounted in pairs (A1-A2, B1- B2, C1-C2, D1-D2), positioned at 90° to each other (B1 with respect to A1 , C1 with respect to B1 , and so on). In each pair one stave is oriented vertically at an angle of 0° and the other, positioned at 45° with respect to the first, oriented at an angle of 2.5° downwards.

[0111] Each stave transmits at 3 dB in a 90° angular sector. In Figs. 3a and 3b the 8 TX transducer staves are shown at a distance from the bottom of the antenna that is purely indicative and can be varied to optimize performance and internal connections to the antenna.

[0112] The main, exemplary and non-limiting features of the TX array are as follows:

[0113] - Each TX stave is made with 20 Tompilz-type transducers

[0114] - Working frequency: 60-80 kHz band

[0115] - Vertical Plane Directivity: + / - 2.5°

[0116] - Horizontal Plane Directivity: + / - 45° @ -3 dB

[0117] - Source Level: >206 dB / uPa@1 m in the 60-80 kHz band.

[0118] Signal & Data Processing Module

[0119] The module 301 is composed of an "acquisition and calculation board" (SAC) 301 housed in a custom mechanic.

[0120] The mechanics are rugged, able to accommodate the SAC board and dissipate the heat produced by the electronics housed in it by conduction to the outside, without the need for forced air circulation.

[0121] The acquisition and calculation board (SAC) is of the "slave" type, controlled by an external command and control console 4, located on board the ship (or platform) or in a remote position, which communicates with it via the Ethernet channel. The board 301 , based on the commands received, manages the transmission of the pulses (ping) and the acquisition of the return signals, processes the A / D converted data according to the sonar processing algorithms, and also manages the interfaces to the auxiliary sensors 60T, 601" present in the antenna (compass, inclinometer, pressure gauge) to accurately reference the processed data.

[0122] In more detail, the SAC 301 board performs the following functions:

[0123] - Generation of the power supplies necessary for the internal circuits starting from 12 VDC input

[0124] - Gbit Ethernet interface (on copper), for communication with the On-Board Console and with the PC for recording the acquired data

[0125] - Management of the TX Switching Module 501 to activate only the relays corresponding to the TX 201 staves about to transmit

[0126] - Management of a DAC channel for driving the two channels of the Power Amplifier 401

[0127] - Acquisition and simultaneous ADC conversion of the 64 differential analogue signals from the preamplifiers 901 of the receiving channels.

[0128] - Interface management with the power amplifier 801. Through the commands and responses provided by the protocol, it is possible to set the attenuation of the transmitted TX signal and receive the data from the compass (managed by the PWA) and the status of the amplifier itself (presence and code of any errors, internal temperature, etc.)

[0129] - Processing of sonar algorithms

[0130] - BIT

[0131] Figure 6 shows a possible block diagram of the Acquisition and Calculation board for use in the SAD system.

[0132] The main components are the processor 311 which underlies the operation of the entire board and a programmable logic component 321 (Field Programmable Gate Array - FPGA) which deals with the processing of the signals received from the receiving channels after appropriate filtering 371 and conversion to digital 361. The beamforming function 381 for managing the focus of the receiving acoustic beam is advantageously entrusted to this programmable logic component 321 .

[0133] The programmable logic component 321 also deals with the generation of the transmitting pulses which, after D / A conversion 341 and conditioning by means of an analogue electronics 331 , reach the amplification unit 401 which will be described in detail in the next section.

[0134] The board has the ability to self-diagnose malfunction situations and can launch BIT tests at any time at the command of the command and control console.

[0135] A generic transmit-receive cycle occurs as follows: a) In non-operational mode the SDPM module remains waiting for commands from the control console. The DAC, which drives the two transmission channels, generates a 0V signal and all relays of the TX Switching Module are open. b) Upon receiving via Ethernet the commands relating to the transmission mode and the start of the same, SDPM starts the transmission sequence by notifying, at each ping, the TSM switching module, to command the closure of the relays (interruption circuits made with MOS), corresponding to the stave or to the two opposite staves, depending on the selected transmission mode, which are about to be transmitted. c) On the SDPM, the Signal Processing SW identifies, at each ping and depending on the evolution of the transmission, the correct waveform (pre-calculated and stored in RAM during initialization), sends the start ping (with indications of which ping to emit and the duration of the reception cycle) and will perform the transmission by commanding the DAC for the entire expected duration of the pulse transmission. Zero metres is communicated to the receiving SWwhen the TX pulse is sent, corresponding to the beginning of the processing d) After transmission of the single pulse, the DACs will return to OV and the SDPM will send the release command for the relays to the TSM. e) Starting from zero metres, data acquisition from the RX preamplifiers will begin. The captured and processed data is stored in RAM. The maximum duration of reception, depending on the full scale, is at most approx. 1s (full scale 800m -> 1600m A / R -> 1 sec) f) Based on the preselected transmission mode, the SDPM SW (Data Proc and Signal Proc) will identify the stave (or staves) to be used for the transmission of the next ping, and will send the command to TSM to activate the relative relays. g) The SDPM Data Processing SW determines, depending on the particular pre-selected mode, the time to start the new transmission / reception cycle, repeating the previous steps starting from point c). h) During the SDPM operating mode, in addition to managing the transmission, it also waits for new commands.

[0136] Depending on the particular operating conditions, the user can select from the console whether to transmit, in a mutually exclusive way, with the staves vertical or with the staves inclined.

[0137] The transmission can, for example, take place in the following two different ways, which can be selected from the console:

[0138] 1 . The first mode consists of sequentially driving, by selecting on the switching board, all the staves, with non-overlapping but close pulses (each pulse will start about 1 ms after the end of the previous one). In this way, with four successive transmissions, a horizontal coverage of 360° will be obtained, while in the vertical plane the coverage will be that of the natural beam of the 4 active staves.

[0139] 2. The second mode consists of alternately driving, again by selection on the switching board, first the two odd staves (indicated with TX1 and TX3 in Fig. 2, at 180° to each other) and then the two even staves (TX2 and TX4 in Fig. 2, at 180° to each other and orthogonal to the odd staves). Also in this mode, with two successive transmissions, a horizontal coverage of 360° will be obtained, while in the vertical plane the coverage will be that of the natural beam of the 4 active staves.

[0140] Power Amplifier

[0141] The Power Amplifier 401 module has the characteristic of guaranteeing a Source Level >206 dB / uPa@1 m in the 60-80 kHz band. The main requirements of the PWA are the following:

[0142] - Power: 250W

[0143] - The interface between control board and PWA is, for example, made up of:

[0144] • Serial RS232 to allow the SAC acquisition and calculation board to manage the ancillary functions (Attenuation Selection, BITE, Status, etc.) with the protocol defined in the dedicated document, to which reference is made for details

[0145] • Analogue signal to drive the input of the two PWA channels used

[0146] - The two PWA channels will remain on during the operational phase. The transmission will be managed by the SAC 301 board, which will appropriately pilot the TX Switching Module 501 , to prepare the connections with the TX 201 staves via relays, and the two channels of the PWA 401 , sending both the differential FM signal to be amplified and transmitted. The protocol provides for the possibility of inhibiting, by serial command, the transmission of one of the two channels, so as to allow transmission on a single TX stave

[0147] - The FM signal, sent in input to the two PWA channels, is included in the 60-80 kHz band.

[0148] - Compared to the maximum transmittable index level, 7 attenuation levels can be selected to drop in steps of 3 dB.

[0149] - Duration of the transmission pulse: 40 ms max, 5 ms min.

[0150] - Transmission duty cycle: less than 8%.

[0151] - Self-diagnostic capability with BITS able to indicate the status of the PWA channels, both as a result of internal tests performed at power- up at the request of the SAC board, and as a result of the CBIT performed during operating mode.

[0152] - Before the start of each test session, and later when necessary, the SAC board will activate the BIT of the two PWA channels and will receive in response the status of the modules (OK, NOT OK) and any indications of malfunctions found.

[0153] - The TX Switching Module 501 can be arranged to allow each PWA channel 401 to drive, with the appropriate timing and in compliance with the duty cycle, all 8 TX staves in order to continue operating in a degraded manner in case of malfunction of one of the two PWA channels.

[0154] Each of the two transmission channels uses a single-phase High Voltage Transformer HVT 801 interposed between the PWA 401 , which generates the low voltage signal, and the TX Transducers Array 201. HVT 801 raises the driving voltage of the transducers to the desired levels and adapts them to transmit the maximum power.

[0155] TX Switching Module

[0156] The module 501 consists of two Relays Boards housed in a custom mechanic.

[0157] The mechanics are rugged and have the ability to dissipate the heat produced by the electronics housed inside by conduction to the outside, through the appropriately sized mechanical interfaces, without the need for forced air circulation.

[0158] The Relays Board is of the "secondary" type, controlled by the SAC 301 board that communicates with it via the l2C-bus serial line. The board, based on the received commands, may direct the output signals from the two Power Amplifier channels 401 to the transducer staves 201 provided by the selected transmission mode.

[0159] In Fig. 7 the block diagram of a possible driving chain of the 8 TX transducer staves is shown, indicated as A1 , B1 , C1 , D1 for those having the same tilt of 0°, and as A2, B2, C2, D2 for those having the same tilt of 2.5° downwards. It is possible to operate in a degraded manner in case of malfunction of one of the two PWAs. To achieve this functionality, the TX Switching Module 501 can, for example, be arranged to allow each PWA channel to drive, in sequence and with the appropriate timing, all 8 TX staves.

[0160] The input signals to the module (during the pulse) are about 500 / 700 V peak when transmitting at maximum power (206 dB), with a maximum current of about 200 / 300 mA.

[0161] The relay switches are controlled by the SW of the SAC board 301 when the Audio Signal, generated by the same board, is 0 Volts.

[0162] For further details, please refer to the description of the generic transmit-receive cycle in the Signal & Data Processing Module section above.

[0163] Solid state relays can be used as a type of components to carry out the switches. The load placed on the output channels will be predominantly capacitive.

[0164] The TX Switching Module 501 has a BIT capability to allow the Software of the SAC board 301 to verify the correct operation of the relays, before and during operating mode.

[0165] In Fig. 8 a diagram with a minimum of functional detail of the Relays board is shown, where the 8 outputs to 8 TX transducer staves are indicated, indicated in Figure 6 as A1 , B1 , C1 , D1 for those that have the same tilt of 0°, and as A2, B2, C2, D2 for those that have the same tilt of 2.5°.

[0166] For a solid-state connection, it is provided to position, in mirrorimage orientation, two MOSFETs in series, with common activation via a photovoltaic or capacitive insulator.

[0167] An I / O extension with I2C bus serial communication from the control FPGA on the SAC board can be used to control the switches.

[0168] The I / O extension, in addition to configuring the matrix switches, also makes it possible to check during the BIT the presence on the transducers of an appropriate test signal from the amplifier and generated by the DAC. This signal should have a frequency far from the normal working frequency so that the two types of signal can be adequately separated with a filter.

[0169] Auxiliary sensors (IMU&AHRS, Pressure Gauge)

[0170] The auxiliary sensors, 60T, 601" (compass, pressure gauge, inclinometer) are suitably positioned inside the antenna 1 to accurately reference the processed data in terms of magnetic detection, depth and inclination with respect to the vertical.

[0171] COTS modules are used, which are readily available on the market.

[0172] All the auxiliary sensors 60T, 601" are preferably interfaced with the PWA module 401 , therefore the data are acquired by the SAC board 301 through the appropriate commands, provided for by the protocol, sent to the PWA on the RS422 serial communication line. This data can be used by the processing and transmitted via Ethernet to the console 4.

[0173] The auxiliary sensors are powered by 12 VDC.

[0174] As a non-exhaustive indicative list, the auxiliary sensors comprise a compass, a Pressure Gauge, IMU&AHRS. For the latter, one solution may be the VN-100 component, which can provide all the data necessary to accurately reference the data processed in terms of magnetic detection and inclination with respect to the vertical. Compass data can also be provided by IMU&AHRS, which has magnetic sensors inside.

[0175] Another sensor is the Flood Sensor. This is a commonly used flooding sensor that is suitably positioned in the antenna 1 , on the lower bottom 11 , to give the alarm in case of a water deposit inside. The alarm is timely, such as to allow an instant opening of the antenna power supply lines, and an immediate recovery of the antenna on board to prevent the possible entry of water from causing harmful and dangerous consequences to the electronics contained therein.

[0176] The sensor measurement is sent directly to the shipboard to allow the alarm to directly reach the operator in charge of the launching and recovery operations of the antenna, and to automatically cause the antenna power supply lines to open. It is possible to provide that the signal coming from the sensor reaches electronics 303 present, for example, in the power supply unit 3 that performs an automatic deactivation of the power supply through appropriate switches 403.

[0177] Antenna Harness

[0178] This component consists of the set of interconnection cables between the internal equipment of the Antenna and between the Antenna and the partly dry equipment. In the embodiment described, the following cables or wiring are provided:

[0179] • No. 1 Gbit Ethernet cable for the connection between the Signal & Data Processing Module 301 and the Vehicle Console 7; the cable comes out of the Cylindrical Underwater Container 1 through a dedicated connector, with characteristics such as to allow the speed of 1 Gbit / sec.

[0180] • No. 2 cables for the power supply of the Signal & Data Processing 301 (12VDC) and the PWA 401 (48VDC); the cables come out of the Cylindrical Underwater Container 1 through a dedicated connector.

[0181] • No. 1 Connection cable of the Flood Sensor 601 with the battery container 3 (NCB); the cable comes out of the Cylindrical Underwater Container 1 through a dedicated connector.

[0182] • No. 1 Forked cable for the connection between the SDPM (Signal & Data Processing Module) 301 and the PWA 401 TX amplification module (first branch), and between SDPM 301 and TSM 501 (second branch).

[0183] • No. 1 Cable for the connection between the amplification module PWA 401 and the pressure switch 60T.

[0184] • No. 1 Cable for the connection between the amplification module PWA 401 and the IMU&AHRS module 601".

[0185] • No. 1 Wiring for the connection between the Signal & Data Processing Module 301 and the 64 preamplifiers 901 of the 64 reception channels 101. • No. 2 Shielded connection cables between the two channels of the High Voltage Transformer HVT 801 module and the two inputs of the TX Switching Module 501 .

[0186] • No. 8 shielded connection cables between the TX Switching Module 501 and the 8 TX transducer staves 201 .

[0187] Winch

[0188] The purpose of this component, which is part of the SMMR (Launching, Handling and Recovery System) 2, is to allow easy launching and recovery operations of the Antenna module. It can be replaced by any other similar device such as a hoist or crane.

[0189] Nautical Container for Batteries (NCB)

[0190] The purpose of this component 3 is to allow the, partly dry, housing of the batteries that power the Antenna 1 and the electronics 303 for managing the flooding situation.

[0191] The main features and equipment of the NCB are as follows:

[0192] • Container (Board Equipped Chassis) suitable for nautical use, equipped with handles for transport

[0193] • Connectors for the connection with the electrical cables connected to the Antenna

[0194] • Connector for connection with Console 7 (not necessary if the Ethernet cable from the Antenna connects directly to the Console).

[0195] • Circuitry 303 and 403 for automatically opening the power supply lines to the Antenna in case of flood alarm

[0196] • Button for disconnecting the power supplies to the Antenna Casing in case of emergency.

[0197] 12VDC / 48VDC Batteries

[0198] The main features are as follows:

[0199] • Battery 103: 12VDC + / - 20% for power supply to Signal & Data Processing Module, TX Switching Module, Compass, Pressure Gauge, Inclinometer, Flood Sensor. • Battery 203: 48VDC + / - 20% TBD for PWA power supply

[0200] • The returns for the two batteries are independent

[0201] • The two batteries 103, 203 are appropriately sized to ensure the operation of the system for the entire required duration. It is possible to duplicate the batteries and provide circuitry that monitors the charge of the operating battery and at the same time recharges the nonoperating battery, switching the two when necessary.

[0202] Flood Alert Module (FLA)

[0203] The module 303 is intended to act upon the occurrence of a flood situation in the Antenna.

[0204] The main features are as follows:

[0205] • Management of the signal from the flood sensor 601 located in Antenna 1 .

[0206] • Power supply disconnection: driving the relay 403 to disconnect the power supplies to the Antenna at the onset of flooding

[0207] • It is also possible to use several flood sensors, to be positioned at critical points where they can signal the presence of moisture before water deposits are formed on the bottom of the antenna. In this case, the flood signal will be the functional OR of the sensors used.

[0208] Steel Cable

[0209] The supporting steel cable is sized to support the Antenna module during the launching and recovery operations and during the functional tests at sea. One end of the cable will be hooked to the Winch and the other end will be hooked to the suspension eyebolts of the Cylindrical Underwater Container 1 , in such a way as to limit its rotary movements as much as possible.

[0210] The main features are as follows:

[0211] • Length approx. 20 m • Tensile strength suitable for lifting loads greater than 300 Kg (the weight of the antenna in the air is about 100 Kg including the ballast).

[0212] Electrical Cable

[0213] Multiple independent cables are provided for the connections of the Antenna module to the partly dry equipment.

[0214] The main characteristics of the cables are as follows:

[0215] • Length approx. 25 metres

[0216] • No. 1 Gbit Ethernet cable connecting the Signal & Data Processing Module 301 and the Onboard console 4; the cable exits the Cylindrical Underwater Container 1 through a dedicated connector and terminates with a connector suitable for connection with the Console

[0217] • No. 2 Power supply cables for Signal & Data Processing 301 (12VDC) and PWA 401 (48VDC); the cables exit the Cylindrical Underwater Container 1 through a dedicated connector and terminate with connectors suitable to be connected to the two respective connectors on the battery container 3.

[0218] • No. 1 Connection cable of the Flood Sensor 601 to the partly dry control and intervention circuitry 303; the cable comes out of the Cylindrical Underwater Container 1 through a dedicated connector and ends with a connector suitable to be connected to the respective connector on the battery container 3, in which the Flood Alert Module 303 is housed.

[0219] Console

[0220] This is the instrument, connected to the Antenna via Gbit Ethernet, by means of which it is possible to:

[0221] • Carry out functional checks before and, if necessary, during the operational phases.

[0222] • Select the parameters that determine the mode of operation of the SAD.

[0223] • Manage the operator controls. • Represent the raw sonar data.

[0224] • Represent processed sonar data, e.g. traces, alphanumeric data associated with traces, alarms, etc.

[0225] • Run the algorithms for contact tracking.

[0226] • Run algorithms for classifying moving contacts.

[0227] The Console can be any PC. An example is a rugged laptop PC from DELL.

[0228] The sonar data are presented in real time, and recorded on a dedicated PC, indicated with reference 9 in the figures, for the subsequent analyses made in deferred time, on Console 4. By acting on this, the operator can select the system parameters, select the mode and activate the transmission, and view the traces of the detected threats.

[0229] It is also possible for the operator to select the self-test functions provided if necessary, in order to verify that the system is functioning correctly.

[0230] In Fig. 9 the processing diagram and in particular the functions allocated to the console are shown:

[0231] • The management of operator commands

[0232] • The representation of a PPI-type and A-scan type

[0233] • The representation and storage of trace data

[0234] • The representation of the auxiliary data

[0235] • Contact classification, tracking algorithm.

[0236] The latter functions are algorithms not concerning the humanmachine interface despite being located on the console PC.

[0237] The system evolves through the states and modes specified in the following table.

[0238] Description OF SW components The following paragraphs contain the brief descriptions of the functions performed by the various SW components that are part of the SAD system. All functions were tested, initially in the laboratory through simulations of fictitious targets, and later with the antenna at sea and in the presence of real targets.

[0239] CSCI Signal Processing

[0240] This component resides on the FPGA 321 of the processing board 301 .

[0241] It has the following functions:

[0242] >- Management of A / D converters 361

[0243] >- Heterodyne in baseband, filtering and decimation 1 :10 of the signal

[0244] >- Synthesis of beams in the freguency domain

[0245] >- Adaptive filtering in the freguency domain

[0246] >- Return to time domain and landscape storage

[0247] >- Sending the data to the recorder through the supervision of the CSCI "Data Processing". Heterodyne sensor data is stored prior to beam synthesis

[0248] >- In order to carry out off-line checks, receiving data from the recorder or, with the same protocol, from the Generator for testing, through the supervision of Data Processing. The data represents sensors translated into baseband and is processed by the "beam synthesis" function listed above

[0249] >- Execution of the FPGA 321 BIT on command of the "Data Processing" and sending the result to the same

[0250] CSCI "Data

[0251] This component resides on the ARM section 311 of the processing board 301.

[0252] It has the following functions:

[0253] >- Normalization at detector output >- Thresholding, clustering, angle interpolation

[0254] >- Extraction of some parameters used in the classification algorithm

[0255] >- Auxiliary data reading (compass, depth gauge, inclinometer, basket temperature)

[0256] >- Supervision of the recorder and the generator for testing on command from the console

[0257] >- Sending the command and reading the results of the antenna BIT and FPGA

[0258] >- Receipt from console of transmission command, waveform type, transmission direction; transmission command to DACs and FPGA module

[0259] >- Packing the rows, at normalization output, as a function of the full scale, for the PPI display

[0260] >- Sending data to the console, in particular:

[0261] • Data for the PPI display

[0262] • Threshold data for automatic contact tracking

[0263] • Consistent detector output data for contact classification and A-Scan display.

[0264] • Auxiliary data (compass, depth gauge, inclinometer, basket temperature) for the representation

[0265] • Data relating to the result of the BIT for representation

[0266] CSCI "Console"

[0267] This CSCI resides on PC 4 connected to the submerged part by the connection cable.

[0268] It has the following functions:

[0269] >- MMI. In particular, the following are managed:

[0270] • Graphic displays

[0271] • Operator commands

[0272] • Switching between system states / modes

[0273] • Communications with "Data Processing" • Automatic contact tracking

[0274] • Contact classification

[0275] • Online recording of information for constructing the classification model

[0276] CSCI "Test Generator"

[0277] The Test Generator resides on a PC and has the following functions:

[0278] >- Synthesize the test data. The data, to simulate fictitious targets, are prepared off-line using a programming and calculation platform such as Octave or Matlab and are used in particular during the system tuning phase.

[0279] >- Sending the data to the antenna (through the CSCI "Recorder"), in particular to the "Signal Processing" through the supervision of the "Data Processing". The protocol used is that of the recorder, the data exchange takes place in real time with the operational timings

[0280] CSCI "Recorder"

[0281] This component resides on a Personal Computer 5, different from the Console 4, and performs the function of storing and reproducing the data from the antenna.

[0282] Decimated and heterodyned baseband sensors are recorded and re-read.

[0283] The data flow to / from the recorder is managed by the "Signal Processor" with the supervision of the "Data Processor". The commands for the recorder are sent to the "Data Processor" via console MM I buttons.

[0284] The protocol to / from the recorder is identical to that of the "Test Generator". The data exchange takes place with the timings of the operating mode.

[0285] Interfaces The SAD system can operate without external connections as it is equipped with batteries for autonomous power supply and has all the necessary sensors for the location, classification and display of the contacts present in the scenario under observation.

[0286] The only connection provided is to the charger to keep the batteries charged.

[0287] For the connections of the internal modules the following interfaces are provided.

[0288] • No. 1 a Gigabit Ethernet interface: o channel for connecting the SDPM (inside the antenna, at sea) with the console (in the operations centre, dry)

[0289] • No. 2 two connections for antenna power supply: o 12VDC from partly dry batteries to partly wet acquisition and processing electronics (TX / RX antenna) o 48VDC from partly dry batteries to partly wet Power Amplifiers (TX / RX antenna)

[0290] • No. 1 a flood alarm connection: o signal generated by the sensor placed in the antenna to signal flooding situations to the operations centre, in order to disconnect the power supplies in the event of an alarm

[0291] • No. 1 a differential analogue signal: o signal generated by SDPM for driving the two channels of the PWA o 2 contacts on the SDPM communication connector

[0292] • No. 64 differential analogue signals: o signals generated by the pre-amplification electronics of the signals coming from the RX sensor staves and sent to the SDPM for A / D conversion and subsequent processing o 136 contacts on the four RX signal connectors, each with 34 contacts, of the SDPM (128 for RX signals, 4 for 12VDC and 4 for GND). The 12VDC and GND signals are controlled by SDPM and have the function of enabling the power supply of the pre-amplification circuitry that works with the direct 12VDC of the battery. AWG24 cables are used for the connection between RX and SDPM preamplifiers.

[0293] • No. 3 RS232 type serial channels: o a channel for communication of the SDPM with the PWA o 3 contacts on the SDPM communication connector (TX, RX, GND) o a channel will be used for maintenance o a provisioning channel

[0294] • No. 1 channel I2C o channel for communication between SDPM and

[0295] TSM o 4 contacts on the SDPM communication connector

[0296] (SDA, SCL, 12VDC, GND)

[0297] Figure 10 contains the block diagram of the connections between the various interfaces.

[0298] Below are, by way of example, some functions and characteristics of the main interfaces of the system.

[0299] Gigabit Ethernet

[0300] Interface for the connection between the control and processing board of the antenna and the equipment (console and data recorder) that are in the operations centre. All communications between the submerged part of the system and the dry part pass through this interface. In particular, all the functions of the system are controlled by the console and the data is received for the classification and display of potentially dangerous targets. In addition, all raw data acquired for recording on a dedicated PC are transferred through this interface. Recording the data is important, because by analysing these, in a deferred time, it is possible to verify the functionality of the algorithms and make changes to optimize performance. The flow of data, during recording and in playback, takes place with the timings of the operating mode, and this will make it possible to replicate, in a deferred time, the representation as if the system were operating in real time.

[0301] To allow all data to be recorded in real time, it is advisable to have a Gigabit Ethernet interface that actually guarantees a maximum throughput of 1000 Mbps (Megabits per second), and therefore suitable devices, cables and connectors must be used to guarantee this throughput.

[0302] RX IN

[0303] Interface formed by 64 analogue input channels for the acquisition of the 64 differential signals generated by the preamplifiers of the signals generated by the 64 staves of RX sensors. The characteristics of the input interface, housed on the SAC board, are as follows:

[0304] • 64 input channels

[0305] • Interest band: 20 kHz band centred around 70 kHz

[0306] • Buffering of the input signal to obtain an acceptable input impedance

[0307] • Scaling and shifting common mode voltage to fit the input range of ADCs

[0308] • Anti-aliasing filter

[0309] • Inputs: o Differential range +- 1V o Input impedance: 50 Kohm Typ, in parallel with 20 pF o AC Coupling

[0310] ADC: o 24 bits with simultaneous sampling o Sampling frequency: at least 2.5x max frequency of interest; algorithms already defined for 256k

[0311] TX OUT Interface formed by two differential analogue channels: the first is the FM audio signal for driving the PWA TX amplifier, the second for generating a trigger signal to be used only for some tests of the antenna in the tank.

[0312] The characteristics of the output interface (DAC on SDPM) are as follows:

[0313] • DAC resolution >= 14 bits

[0314] • X2 (1 per TX drive, 1 per trigger)

[0315] • Differential output, range + / - 1V

[0316] • AC coupling

[0317] AMPLI CMP

[0318] RS232 serial interface.

[0319] This interface has been designed to connect the SDPM with the PWA power amplifier to send / receive the following main information:

[0320] • Activating / switching off the amplifier

[0321] • Selectively inhibiting one of the two amplification channels

[0322] • Adjusting the transmitting power: it is possible to select the attenuation (7 steps of 3 dB / each) to transmit with reduced power compared to 206 dB max

[0323] • Receipt of PWA status information, in particular any anomalies and internal temperature on the two channels

[0324] POWER 48VDC

[0325] Input power line. Features:

[0326] Rated voltage: 48Vdc (±7Vdc)

[0327] Absorbed current (estimate)

[0328] PWA: 25W (250W peak with 10% duty cycle)

[0329] POWER 12VDC

[0330] Input power line. Features:

[0331] Rated voltage: 12Vdc (±2Vdc)

[0332] Absorption (estimate): SAD: 30 W

[0333] • RX preamplifier: 18W

[0334] • Auxiliary sensors: 2W

[0335] Classification techniques and algorithms

[0336] We will now consider some examples of algorithms that can be used for target classification using both the trajectories covered by the targets, and the echoes produced.

[0337] As this is a system for surveillance against underwater threats, the identification of a diver assumes greater importance than the correct classification of other types of targets that do not constitute potential dangers for what is to be monitored.

[0338] The development of the aforementioned capabilities was conducted through the simulation of trajectories and echoes of the different targets using accurate stochastic models of the dynamic behaviour and the acoustic wave response of the targets themselves. Environmental acoustic noise has also been introduced that limits the range of the sonar system, injecting further aleatoriness into the echoes and inserting errors in the distance measurement of the trajectory.

[0339] In the following pages, an approach to develop target classification techniques will be described that represents a satisfactory compromise between an extremely accurate simulation of the physical phenomena and the operations carried out by sonar, excessively complex to prepare and expensive in computational terms, and a schematic simulation, in which behaviour and acoustic response are described by a few elementary rules, excessively simplistic and far removed from reality.

[0340] The simulation of trajectories and echoes is not intended to replace the collection of data at sea, much less to train the apparatus to give it the ability to operate at sea without prior training with real data. The purpose of the simulation, although ambitious, is limited to the design of a pipeline of signal processing and machine learning techniques that can work both on synthetic data and, with minimal adaptations, on real data.

[0341] Regardless of the source of the data, the following needs have been taken into account in the design of the classification techniques: o being able to repeatedly classify the target during its movement, as the trajectory develops, starting shortly after its first detection; o being able to train the classifier using deficient, incomplete or unbalanced data sets (called training sets), obtaining interesting even if not optimal performance; o seeking always to obtain the distinction between a threatening target and a non-threatening target (hereinafter referred to as threat detection), going as far as, only in the presence of sufficiently complete training sets, final identification of the target (called target classification).

[0342] The framework of these needs leads us to address the critical point regarding the cutoff to be given to research in the field of machine learning, adopting a system approach. Instead of optimizing the choice of features or that of the classification technique or, again, that of the parameters, it was preferred to concentrate efforts on the overall pipeline, delineating a flow of operations that, starting from the beam signals produced by the sonar system, would make it possible to reach the desired classification, at the different times and in the different operating conditions outlined above. In fact, it is hoped that the pipeline can maintain its validity, apart from some inevitable adaptations, moving from simulated to authentic data, from the simulated sonar system to the real one. On the contrary, any optimizations of features, techniques and parameters, based exclusively on simulated data, would risk not being confirmed by switching to the real system operating at sea, detecting their substantial uselessness at this stage of development.

[0343] The methods adopted for the simulation of the different targets and for the simulation of the echoes received by the sonar system during the movement of the targets will be described below, up to the generation of the beam signals. The classification techniques adopted are also described, which have guaranteed, with due adaptations, a good level of performance in the different operating modes and a marked robustness with respect to the choice of parameters and data with which to train the models. The results obtained, both in terms of simple threat detection (binary classification) and in terms of fine classification of the target, are illustrated with emphasis on their stability. In order to address the issue of classification in a comprehensive manner, the following points are also discussed: how the beam signals of the sonar system are generated and processed; on the basis of these considerations it is decided whether an echo represents a contact to be attributed to a trace; what are the quantities that are used to characterize the contact; how are these quantities used, as the trace lengthens, to calculate the feature vector used for classification.

[0344] 1 . Models of Movement and Acoustic Response of the Targets

[0345] The moving targets in the field inspected by the sonar system according to the invention can be grouped into four classes, the first three of a non-threatening nature (hereinafter referred to as neutral), the last of a threatening nature: o school of fish; o single fish; o passing vessel; o diver.

[0346] For each class, a shape model and a movement model are defined, both with the degrees of aleatoriness necessary to include all the possible members belonging to the class itself and their possible trajectories. Shape and position of a given target are data that are transferred to a sonar system simulator to allow it to calculate the echo received in response to pings transmitted at regular time intervals. The beam signals calculated by the sonar taking into account these echoes (obviously added to an appropriate amount of noise) are then used to extract the contacts and give rise to the traces to be used for learning a classification algorithm based on machine learning, which is also the subject of the present invention.

[0347] Among the four classes, the most complex to model is undoubtedly the school of fish due to the need to introduce behavioural patterns of the fish, that are adapted to describe the interactions between the individuals that make up the school.

[0348] The model of the four classes will be described below as simulated and with the values assigned to the parameters involved, whether they are deterministic or aleatory.

[0349] School of Fish

[0350] Among the numerous possibilities offered by the literature (similar to each other, but not without important differences), it was considered that the one described in Couzin, I. D., Krause, J., James, R., Ruxton, G. D., & Franks, N. R. (2002). Collective memory and spatial sorting in animal groups. Journal of theoretical biology, 218(1 ), 1-11 is the one that offers a good compromise between the ability to reproduce the different behaviours of schools of fish, and the implementation complexity and computational burden. It is a three-dimensional model that has been very successful, having been used or taken as a reference in numerous subsequent publications.

[0351] The literature identifies three notable behaviours of schools of fish: o swarm (the fish move without clear coordination, in a disorderly manner; the school, as a whole, remains almost stationary); o milling or torus (the school takes the form of a torus within which the fish rotate or make spiral trajectories; the school, as a whole, remains almost stationary); o schooling or parallel group (the fish swim aligned in a compact group and the school moves in a certain direction).

[0352] The model adopted, based on the characteristics of the school, reproduces the three behaviours and the spontaneous and random transition, when said characteristics allow it, from one to the other. According to the provisions of the aforementioned document, the school is characterized by the following quantities: o length of the fish that make up the school, equal for all individuals, called unit length or unit (unitl, in m / unit) o number of individuals making up the school (N) o speed at which fish move, the same for all individuals (s, in unit / s)

[0353] Each individual is characterized by a position in space and a unit vector that indicates the direction of motion. These quantities are updated at a fixed time step (deltat_ogg, normally set equal to 0.1 s), based on the position and / or orientation of the surrounding fish, inside three zones of influence, not superimposed on each other. Based on this, the desired direction of the fish in its movement between the current instant and the next is determined.

[0354] The innermost zone, called the repulsion zone, is a sphere centred on the fish in question and having a radius indicated with zor (expressed in units). If there are fish within this sphere, the desired direction will be the sum, with normalized modulus and with opposite direction, of the unit vectors that point from the fish in question towards its neighbors.

[0355] If there are no fish in the repulsion zone to move away from, the desired direction is determined based on the fish present in the orientation zone and the attraction zone. These two areas are spheres centred on the fish, from which a conical volume positioned behind the fish itself is removed. This represents the portion of space in which the fish in question cannot perceive its neighbors; a sort of "blind region". The internal angle of the cone is equal to a 360° visual field, where visual field means the field of perception of the fish, expressed in degrees. The radius of the orientation zone is indicated with zoo (in units) and that of the zoa attraction zone (in units), with zoa > zoo > zor. The desired direction linked to the orientation zone will be the sum, with normalized modulus, of the vectors indicating the direction of motion of the fish present in said zone. The desired direction linked to the attraction zone will be the sum, with normalized modulus, of the unit vectors that point from the fish in question towards the fish present in said zone. If there are fish in both areas, then the desired direction will be the mean of the two calculated above; otherwise it will be the same as that linked to the area in which there are fish. If no fish is present in the three zones mentioned above, the desired direction will be equal to the vector indicating the direction of motion of the fish in question.

[0356] To simulate the errors of perception and movement of the fish, the desired direction, determined according to the rules set out above, is modified by adding to the polar and azimuth angles that characterize it two Gaussian aleatory variables with a mean of zero and with appropriate standard deviations, linked to the variable std_err.

[0357] After summing the random errors, the desired direction is definitively determined and the vector indicating the direction of motion of the fish in question will be set equal to the desired direction. If the angle between the preceding direction of motion and the desired direction is greater than the maximum rotation (obtained by the product between the maximum rotation in the unit of time maxturn, in degrees / s, and the time step deltat_ogg, in s), then the fish is rotated towards the desired direction by an amount equal to the maximum rotation. The new position of the fish is calculated by adding to the previous position the vector indicating the direction of motion of the fish, which is assigned a modulus equal to s-deltat_ogg.

[0358] The above is carried out for each fish in the school, after which the procedure moves on to the next instant of time and repeats all steps.

[0359] According to the provisions of Couzin et al., before starting, the probability distributions from which to extract, for a given school, the following quantities are set: unitl, N, s, zoa, zoo, zor, visual field, maxturn, std_err.

[0360] At start-up, the initial positions and directions of the fish that make up the school must be fixed. To do this, the fish are randomly positioned inside a sphere whose radius, in units, depends on N and whose centre may be at the maximum range of the sonar system (with random azimuth and depth) or at a shorter distance (chosen randomly, as well as the azimuth), fixing the depth where the region inspected by the sonar is limited by the vertical opening of the beams. In the first case, the fish enter the region inspected by the sonar at the maximum distance from it, all moving in the same direction (chosen with a wide margin of randomness, but requiring it to be horizontal); in the second case, the fish enter the aforementioned region coming from below, always all moving in the same direction (chosen with a wide margin of randomness, but requiring it to point upwards).

[0361] If during the movement a fish in the school reaches the surface of the sea or the seabed, then the vertical component of the vector indicating its direction of motion is reset and the vector itself is renormalized.

[0362] The echo received from the sonar will be calculated for each transmitted ping (that is, each n_deltat_sonar-deltat_ogg, where n_deltat_sonar represents the number of steps in the target movement simulation that occur between two successive pings) by consistently summing the echoes of all the fish that make up the school, calculated based on the position of each and their target strength. Each fish in the school is modelled as a punctiform diffuser with a given target strength. All the fish in the school are characterized by the same target strength value, TS, calculated as a function of their length using the equation proposed in X. Lurton (2010) An Introduction to Underwater Acoustics. Principles and Applications (Second Edition). Springer Praxis: where L is the fish length in metres and fk is the sonar frequency in kHz.

[0363] Single fish

[0364] The modeling of the single fish is a direct consequence of the modelling shown above for the school of fish, simplified by the absence of social interactions but complicated by having to model a body whose dimensions can be considerable. The fish is characterized by the following aleatory quantities: o length of the fish, called unit length or unit (unitl, in m / unit) o speed at which the fish is moving (s, in unit / s) o maximum rotation in the time unit (maxturn, in degrees / s)

[0365] The fish is characterized by a position in space and a unit vector that indicates its direction of motion. These quantities are updated at a fixed time step (deltat_ogg, normally set equal to 0.1 s), based on trajectory deviations due to random fluctuations. In particular, at each deltat_ogg interval the direction of motion is modified by adding to the polar and azimuth angles that characterize the direction two Gaussian aleatory variables with a mean of zero and with appropriate standard deviations, linked to the variable std_err.

[0366] After summing the random errors, it must be evaluated whether the angle between the previous direction of motion and the new one is greater than the maximum rotation, obtained by the product between the maximum rotation in the maxturn unit of time, in degrees / s, and the time step deltat_ogg, in s. If it is, the fish is rotated towards the desired direction by an amount equal to the maximum rotation. The new position of the fish is calculated by adding to the previous position the vector indicating the direction of motion of the fish, which is assigned a modulus equal to s-deltat_ogg.

[0367] Of course, before starting, the probability distributions from which to extract, for a given fish, the following quantities are fixed: unitl, s, maxturn, std_err.

[0368] The initial position and direction of the fish must be fixed at startup. The fish may be at the maximum range of the sonar system (with random azimuth and depth) or at a shorter distance (chosen randomly, as well as azimuth), fixing the depth where the region inspected by the sonar is limited by the vertical opening of the beams. In the first case, the fish enters the region inspected by the sonar at the maximum distance from it, moving in a chosen direction with a wide margin of randomness, requiring it to be horizontal; in the second case, the fish enters the aforementioned region coming from below, moving along a chosen direction with a wide margin of randomness, requiring it to point upwards.

[0369] If during its movement the fish reaches the surface of the sea or the seabed, then the vertical component of the vector indicating the direction of motion is reset and the vector is renormalized.

[0370] Considering that only a fish of significant length can be detected by sonar, to introduce the variability that characterizes the echo, ping after ping, the body of the fish is modelled as a straight segment of length equal to unitl, oriented in the direction of movement, on which N punctiform diffusers are arranged: one in the centre of the segment, the remaining N-1 in a random position. The number of diffusers is calculated based on the ratio of fish length, unitl, to wavelength, lunond, of the centre frequency of the sonar pulse, setting N equal to the integer closest to the product 3-unitl / lunond. To introduce the effect of surface roughness, the position of the N-1 punctiform diffusers randomly placed on the segment is altered by a three-dimensional aleatory vector whose components have appropriate Gaussian statistics. In this way the diffusers are not exactly on the segment, but are located around it. At each time step, the position and orientation of the segment indicating the fish changes and the position of these N-1 diffusers is randomly redetermined.

[0371] The echo received from the sonar will be calculated for each transmitted ping (that is, each n_deltat_ sonar deltat_ogg, where n_deltat_sonar represents the number of steps in the target movement simulation that occur between two successive pings) by consistently summing the echoes of all the punctiform diffusers that make up the fish body, based on the position of each of them. The amplitude of these echoes is regulated by the target strength of the diffusers, a value linked to the overall target strength of the fish, TS. The latter is determined by the equation at the end of the previous subsection. After numerous tests, the target strength of the individual diffusers is set at TS - 10 dB. In this way, the overall echo produced by the fish has on average the same intensity as the echo produced by a punctiform target whose target strength is TS.

[0372] Passing vessel

[0373] Although a passing vessel makes a trajectory along the horizontal plane and considerably regular, the modeling takes its cue from that of the single fish. Also in this case, the target is modelled as a straight segment along which punctiform diffusers are randomly arranged to obtain, on the one hand, the aleatoriness that characterizes the echo ping after ping, and, on the other hand, the gradual modification of the target strength as the direction of observation of the vessel varies.

[0374] The vessel is characterized by the following aleatory quantities: o length of the vessel, called unit length or unit (unitl, in m / unit) o speed at which the vessel is moving (s, in unit / s)

[0375] The vessel is characterized by a position in space and a unit vector, along the horizontal plane, which indicates the direction of motion. These quantities are updated at a fixed time step (deltat_ogg, fixed in the case of a vessel equal to 2s), based on the deviations of the trajectory due to random fluctuations. In particular, at each deltat_ogg interval the direction of motion is modified by adding to the azimuth angle that characterizes it a Gaussian aleatory variable with a mean of zero and with standard deviations std_err which, in the case of the vessel, is set very small. The new position of the vessel is calculated by adding to the previous position the vector indicating the direction of motion (altered by the random error above), which is assigned a modulus equal to s-deltat_ogg.

[0376] Of course, before starting, the probability distributions from which to extract, for a given vessel, the following quantities are fixed: unitl, s, std_err.

[0377] The initial position and direction of the vessel must be fixed at start-up. The vessel enters the region inspected by the sonar at the maximum distance from it, moving in a chosen direction with a wide margin of randomness, but requiring that it is horizontal and that, if it remains unchanged, it passes sufficiently far from the sonar (in other words, the closest point of approach is set for all possible trajectories of the simulated vessels).

[0378] As anticipated above, the submerged body of the vessel is modelled as a straight segment, in a horizontal position, at a depth of 5m, oriented in the direction of travel, of length equal to unitl, on which N punctiform diffusers are arranged completely randomly. The number of diffusers is calculated based on the ratio of the submerged length of the vessel, unitl, to the wavelength, lunond, of the centre frequency of the sonar pulse, setting N equal to the integer closest to the product 3-unitl / lunond. To introduce the effect of surface roughness, the position of the N punctiform diffusers randomly manner placed on the segment is altered by a three-dimensional aleatory vector whose components have appropriate Gaussian statistics. In this way the diffusers are not exactly on the segment but are located around it. At each time step, the position and orientation of the segment indicating the vessel changes, while the position of the N diffusers around the segment is kept fixed.

[0379] The echo received from the sonar will be calculated for each transmitted ping (that is, each n_deltat_sonar-deltat_ogg, where n_deltat_sonar represents the number of steps in the target movement simulation that occur between two successive pings) by consistently summing the echoes of all the punctiform diffusers that make up the vessel, based on the position of each of them. The amplitude of these echoes is regulated by the target strength of the diffusers, a value linked to the overall target strength of the vessel viewed at its transverse, TSr. The latter is determined by the empirical equation:

[0380] With this equation, a 50 m long vessel will have a target strength at the transverse TSr = 16 dB, while that of a 120 m vessel will be TSr = 20.5 dB; values in accordance with the provisions of R.J. Urick (1983) Principles of underwater sound. 3rd edition. McGraw-Hill and M.A. Ainslie (2010) Principles of Sonar Performance Modeling. Springer Praxis. After numerous tests, the target strength of the individual punctiform diffusers was set equal to TSr - 30 dB. In this way, the overall echo produced by the vessel, when viewed from the transverse, has on average the same intensity as the echo produced by a punctiform target whose target strength is precisely TSr. The same vessel observed from a direction near the bow or stem will have a target strength on average equal to TSr decreased by an amount between 15 and 20 dB, as required by the reference literature.

[0381] Diver

[0382] The model of the diver provides that they can swim or be aided by a vehicle. Depending on the case, the statistical distributions from which they are extracted change, for each subject: o the forward speed, s [m / s]; o the maximum rotation per unit of time, maxturn [degrees / s]; o the standard deviation of the orientation error in the horizontal plane, std_err [degrees]; o the target strength, TS [dB],

[0383] Regardless of whether the diver proceeds by swimming or by vehicle, two types of trajectory have been provided: o direct trajectory: the diver proceeds towards the sonar, making slight fluctuations around the straight segment that connect it to the sonar; o turning trajectory: the diver, by mistake or tactically, proceeds to a point positioned at a certain distance from the sonar, and upon reaching this they make a turn that allows them to head towards the sonar. Again, there are random fluctuations in the trajectory around the straight segments that compose it.

[0384] In all cases, the diver is modelled as a straight segment that moves, remaining horizontal, at a depth of 3 m, unitl = 1 m / unit in length. The diver is characterized by a position in space and a unit vector, along the horizontal plane, which indicates the direction of motion. These quantities are updated at a fixed time step (deltat_ogg, fixed in the case of the diver equal to 2s), based on the deviations of the trajectory due to random fluctuations. In particular, at each deltat_ogg interval the direction of motion is modified by adding to the azimuth angle that characterizes it a Gaussian aleatory variable with a mean of zero and with standard deviation std_err. The new diver position is calculated by adding to the previous position the vector indicating the direction of motion (altered by the random error above), which is assigned a modulus equal to s-deltat_ogg.

[0385] The initial position and direction of the diver must be fixed at startup. The diver enters the region inspected by the sonar at a distance equal to or less than the range of the system (to take into account the fact that the detection of the diver could take place at a distance less than the maximum range, since it has a rather reduced target strength), in a random angular position. From the entry point the diver proceeds to the sonar or turning point with the random fluctuations described above.

[0386] In the case of a turning trajectory, once the turning point is reached, the desired direction changes abruptly, pointing towards the sonar system. To avoid too sudden turns, it is verified that the angle between the previous direction of motion and the desired direction of motion does not exceed the maximum rotation, obtained by the product between the maximum rotation in the unit of time, maxturn, in degrees / s, and the time step, deltat_ogg, in s. If the maximum rotation is exceeded, the diver will be rotated towards the desired direction by an amount equal to the maximum rotation. The new diver position is calculated by adding to the previous position the vector indicating the direction of motion of the diver, which is assigned a modulus equal to s-deltat_ogg.

[0387] As for the fish and the vessel, for the diver N punctiform diffusers are placed along the segment that shapes the body: one in the centre of the segment, the remaining N-1 in a random position. The number of diffusers is calculated based on the ratio of diver length, unitl, to wavelength, lunond, of the centre frequency of the sonar pulse, setting N equal to the integer closest to the product 3-unitl / lunond. To introduce the effect of surface roughness, the position of the N-1 punctiform diffusers randomly placed on the segment is altered by a three- dimensional aleatory vector, whose components have appropriate Gaussian statistics. In this way the punctiform diffusers are not exactly on the segment, but are located around it. At each time step, the position and orientation of the segment indicating the fish changes and the position of these N-1 diffusers is randomly redetermined.

[0388] The echo received from the sonar will be calculated for each transmitted ping (that is, each n_deltat_ sonar deltat_ogg, where n_deltat_sonar represents the number of steps in the target movement simulation that occur between two successive pings) by consistently summing the echoes of all the punctiform diffusers that make up the diver body, based on the position of each of them. The amplitude of these echoes is regulated by the target strength of the diffusers, a value linked to the overall target strength of the diver, TS. The latter is set at - 15 dB in the case of a diver with a vehicle, or randomly chosen in the range [-25, -20] dB in the case that the diver is swimming. After numerous tests, the target strength of the individual diffusers is set at TS - 10 dB. In this way, the overall echo produced by the diver has on average the same intensity as the echo produced by a punctiform target whose target strength is TS.

[0389] 2. Simulation of the traces of the targets

[0390] This section will explain some techniques that allow the movement of a target in the region inspected by the surveillance system to be simulated and the simultaneous operation of the sonar. The choices made regarding the parameters used to model the environment, sonar and statistics that characterize the numerous aleatory variables involved will also be presented. While this section focuses on the movement of targets and the processes that lead to the generation of the echo received by the sonar system in response to the pings it transmits, the following sections will analyze how an echo becomes a contact, how contacts give rise to a trace, and what are the characteristics of the contact that become part of the trace. It should be noted immediately that some of the techniques in question are specific to one of the four target classes, while others are used for all classes.

[0391] School of Fish

[0392] For the simulation of sonar traces produced by schools of fish, the following steps are preliminarily followed: o defining how many traces should be generated and the name to be assigned to them; o assigning the values to the variables deltat_ogg (0.1 s), n_deltat_sonar (20), zor (1 unit), mentioned in the previous section; o defining the depth of the seabed (250 m), the speed of sound in the aquatic medium (1500 m / s), the maximum range of the sonar system (750 m), the number of beams (128) of the sonar system, the angular opening of the beams in the vertical plane (from 0 to 7.5 degrees downwards), the central frequency of the chirp pulse called ping (70 kHz), the frequency used by the sonar for quadrature sampling (25.6 kHz), the decimation factor of the beam signals (temporal compaction) operated by the sonar downstream of the adapted filter (33);

[0393] The statistics of the aleatory variables involved have been set as follows: o length of fish (equal to the length in metres of a unit), unitl, uniform probability density, between 0.1 and 1.5 m / unit; o number of fish in the school, N, uniform probability density, between 3 and 300 specimens; o speed of all the fish in the school, s, uniform probability density, between 1 and 5 unit / s, according to zoological studies; o radius of the orientation sphere, zoo, uniform probability density, between zor (fixed equal to 1 unit) and zor+15 units; o radius of the sphere of attraction, zoa, uniform probability density, between zoo and zoo+15 units; o field of view of the fish, visual field, uniform probability density, between 200° and 360°; o maximum rotation speed of the fish, maxturn, uniform probability density, between 10 and 100 degrees / s; o standard deviation of the Gaussian error used for fluctuations in the desired direction, std_err, uniform probability density, between 5° and 25°.

[0394] Regarding the initial position of the fish, in 70% of cases they will be at the maximum distance from the sonar (750 m) at a random depth, chosen between 0 and half of the depth at which the lower limit of the sonar beam is located, with uniform density. In the remaining 30% of cases, the fish will appear from below at a randomly chosen distance from the sonar with a uniform density between 0 and the maximum sonar range (750 m), at the depth at which the lower limit of the sonar beam is located at the chosen distance. More precisely, the N fish will be in random positions (with uniform density) within a sphere centred at a chosen point as described above and having a volume equal to 7-N unit3. With regard to their initial direction of movement, two cases are distinguished. When they start from the maximum distance from the sonar, they will point horizontally towards the sonar at less than a random angle, between -60° and 60°, chosen with uniform density. When they enter the sonar sector from below, they will have a random azimuth angle between 0 and 360° and a polar angle between 15° and 30° (where 0° would mean heading along the vertical axis), chosen with uniform density.

[0395] After the initial conditions of the fish have been set, the simulation of their movement begins and continues for a number n_deltat_sonar (equal to 20) of deltat_ogg time passes (equal to 0.1 s). At that point the data relating to the position of the N fish pass to the sonar system simulator which calculates the echo received by the sonar in response to the transmitted ping, considering the characteristics of the target and the surrounding environment. Once the sonar simulation is finished, it resumes the movement of the fish for another n_deltat_sonar time steps, that is, until the next ping, and so on.

[0396] The simulation ends if the centroid of the positions of the N fish is outside the region inspected by the sonar system or when the number of pings transmitted reaches 450 (after 15 minutes from the start of the trace). Once the simulation is finished, the data accumulated by the sonar system, ping after ping, relating to the trace of the observed target, are saved in a file, provided that the target has not left the inspected region before at least 45 pings have been transmitted (at least 90 s of target's stay in the region inspected by the sonar). Once a trace has been recorded (or discarded if too short), the simulation of a new school of fish begins, until the number of traces set at the start has been saved.

[0397] All the fish in the school are analysed in sequence and for each of them the direction of movement is determined and the position updated, at each time step assessing whether a given fish, contained in the orientation zone or in the attraction zone of the fish in question, is perceptible or is in the blind zone.

[0398] Since the fish movement is predominantly in the horizontal plane, the null-averaged Gaussian variables that are summed to the azimuth and polar angles of the desired direction in order to model errors of perception and movement have different variance. The variable used to randomly alter the azimuth angle has a standard deviation equal to std_err (an aleatory variable set at the beginning, between 5° and 25°), while the variable used to alter the polar angle has a much lower standard deviation, equal to 0.02-std_err.

[0399] The echoes that become part of the beam signals are then calculated, the contact established and the trace managed for all types of targets, without distinction. Figure 11 shows four examples of trajectories of schools of fish, obtained using the centroids of the sonar contacts forming the trace, downstream of a smoothing filter. The yellow dot indicates the input and the red dot indicates the output. Horizontal and vertical axes in metres, (a) 49 fish of length 1.1 m and speed 4.2 m / s, present in the sonar sector for 89 pings. Mean observed TS, -22.7 dB. (b) 89 fish of length 0.7 m and speed 2.6 m / s, present in the sonar sector for 450 pings. Mean observed TS, -24.2 dB. (c) 91 fish of length 1 .5 m and speed 3.8 m / s, present in the sonar sector for 47 pings. Mean observed TS, -19.6 dB. (d) 212 fish of length 0.7 m and speed 3.0 m / s, present in the sonar sector for 167 pings. Mean observed TS, -21.2 dB. In cases (a) and (d) the school appears at the maximum range, while in (b) and (c) the school appears from below. In (a) and (c) the school proceeds aligned and straight, in (d) it makes a moderately curved and irregular trajectory, in (b) the school rotates remaining in almost the same position for a long period of time.

[0400] Single fish

[0401] For the simulation of sonar traces produced by individual fish, the following steps are preliminarily followed: o defining how many traces should be generated and the name to be assigned to them; o assigning the values to the variables deltat_ogg (0.1 s) and n_deltat_sonar (20), mentioned in the previous section; o defining the depth of the seabed (250 m), the speed of sound in the aquatic medium (1500 m / s), the maximum range of the sonar system (750 m), the number of beams (128) of the sonar system, the angular opening of the beams in the vertical plane (from 0 to 7.5 degrees downwards), the central frequency of the chirp pulse called ping (70 kHz), the frequency used by the sonar for quadrature sampling (25.6 kHz), the decimation factor of the beam signals (temporal compaction) operated by the sonar downstream of the adapted filter (33);

[0402] The statistics of the aleatory variables involved have been set as follows: o length of the fish (equal to the length in metres of a unit), unitl, uniform probability density, between 0.3 and 1.5 m / unit; o speed of the fish, s, uniform probability density, between 1 and 5 unit / s, according to zoological studies; o maximum rotation speed of the fish, maxturn, uniform probability density, between 10 and 100 degrees / s; o standard deviation of the Gaussian error used for variations in the direction of motione, std_err, uniform probability density, between 5° and 20°;

[0403] Regarding the initial position of the fish, in 70% of cases it will be at the maximum distance from the sonar (750 m) at a random depth, chosen between 0 and half of the depth at which the lower limit of the sonar beam is located, with uniform density. In the remaining 30% of cases, the fish will appear from below at a randomly chosen distance from the sonar with a uniform density between 0 and the maximum sonar range (750 m), at the depth at which the lower limit of the sonar beam is located at the chosen distance. With regard to the initial direction of movement, two cases are distinguished. When the fish starts at the maximum distance from the sonar, it will point horizontally towards the sonar at less than a random angle, between -60° and 60°, chosen with uniform density. When it enters the sonar sector from below, it will have a random azimuth angle between 0 and 360° and a polar angle between 15° and 30° (where 0° would mean heading along the vertical axis), chosen with uniform density.

[0404] After the initial condition of the fish has been set, the movement simulation begins and continues for a number n_deltat_sonar (equal to 20) of deltat_ogg time steps (equal to 0.1 s). At that point the data relating to the position of the fish (and all the punctiform diffusers that model its body) pass to the sonar system simulator that calculates the echo received by the sonar in response to the transmitted ping, considering the characteristics of the target and the surrounding environment. Once the sonar simulation is finished, it resumes the movement of the fish for other n_deltat_sonar time steps, that is, until the next ping, and so on. The simulation ends when the centroid of the positions of the N punctiform diffusers used to model the fish is outside the region inspected by the sonar system. Once the simulation is finished, the data accumulated by the sonar system, ping after ping, relating to the trace of the observed target, are saved in a file, provided that the target has not left the inspected region before at least 45 pings have been transmitted (at least 90 s of target's stay in the region inspected by the sonar). Once a trace has been recorded (or discarded if too short), the simulation of a new fish begins, until the number of traces set at the start has been saved.

[0405] Since the movement of a fish is predominantly in the horizontal plane, the null-averaged Gaussian variables that are added to the azimuth and polar angles of the current direction of movement, to introduce variations in trajectory, have different variance. The variable used to alter the azimuth angle has a standard deviation equal to std_err (an aleatory variable set at the beginning, between 5° and 25°), while the one used to alter the polar angle has a much lower standard deviation, equal to 0.02-std_err.

[0406] The echoes that become part of the beam signals are then calculated, the contact established and the trace managed for all types of targets, without distinction. Figure 12 shows two examples of single fish trajectories, obtained using the centroids of the sonar contacts forming the trace, downstream of the smoothing filter described in section 6. The yellow dot indicates the input and the red dot indicates the output. Horizontal and vertical axes in metres, (a) Fish of length 1 m and speed 2.8 m / s, present in the sonar sector for 129 pings. Theoretical TS, -23.1 dB; mean observed TS, -22.3 dB. (b) Fish of length 0.75 m and speed 3.5 m / s, present in the sonar sector for 74 pings. Theoretical TS, -25.7 dB; mean observed TS, -24.4 dB. In case (b) the fish appears at the maximum range, while in (a) it appears from below. In both cases the fish disappears towards the bottom.

[0407] Passing vessel For the simulation of sonar traces produced by passing vessels, the following steps are preliminarily followed: o defining how many traces should be generated and the name to be assigned to them; o assigning the values to the variables deltat_ogg (2 s) and n_deltat_sonar (1 ), mentioned in the previous section; o defining the depth of the seabed (250 m), the speed of sound in the aquatic medium (1500 m / s), the maximum range of the sonar system (750 m), the number of beams (128) of the sonar system, the angular opening of the beams in the vertical plane (from 0 to 7.5 degrees downwards), the central frequency of the chirp pulse called ping (70 kHz), the frequency used by the sonar for quadrature sampling (25.6 kHz), the decimation factor of the beam signals (temporal compaction) operated by the sonar downstream of the adapted filter (33); o defining the minimum distance from the sonar at which the vessel can transit, dist_min, set at 150 m, called the closest point of approach.

[0408] The statistics of the aleatory variables involved have been set as follows: o vessel length (equal to the length in metres of a unit), unitl, uniform probability density, between 10 and 120 m / unit; o vessel speed, s, uniform probability density, between 2 and 5 knots, that is, between 1 and 2.5 m / s, converted into unit / s by dividing the quantity in m / s per unitl; o standard deviation of the Gaussian error used for variations of the direction of motion in the horizontal plane, std_err, uniform probability density, between 0.1 ° and 1 °.

[0409] With regard to the initial position of the vessel, a point along the circumference indicating the maximum range of the sonar (centred in the sonar, with a radius of 750 m) is chosen with uniform probability density. Having traced the radius that leads from the sonar to the initial position of the vessel, two angular sectors are defined between the segments at 85° with respect to said radius and the segments that would lead the vessel to pass through the two closest point of approach (CPA, 150 m from the sonar), placed on both sides of the apparatus. The initial direction of the vessel is chosen with uniform probability density within one of the two angular sectors, also chosen at random. The above-described is visualised in Figure 13.

[0410] After the initial condition of the vessel has been set, the movement simulation begins and continues for a number n_deltat_sonar (equal to 1 ) of deltat_ogg time steps (equal to 2 s). At that point the data relating to the position of the vessel (and all the punctiform diffusers that shape its body) pass to the sonar system simulator which calculates the echo received by the sonar in response to the transmitted ping, considering the characteristics of the target and the surrounding environment. Once the sonar simulation is finished, it resumes the movement of the vessel for other n_deltat_sonar time steps, that is, until the next ping, and so on.

[0411] The simulation ends when the centroid of the positions of the N punctiform diffusers used to model the submerged hull of the vessel is outside the region inspected by the sonar system. Once the simulation is finished, the data accumulated by the sonar system, ping after ping, relating to the trace of the observed target, are saved in a file, provided that the target has not left the inspected region before at least 45 pings have been transmitted (at least 90 s of target's stay in the region inspected by the sonar). Once a trace has been recorded (or discarded if too short), the simulation of a new vessel begins, until the number of traces set at the start has been saved.

[0412] Since the movement of the vessel develops exclusively in the horizontal plane, a single Gaussian variable with a mean of zero is used which, added to the azimuth angle of the current direction of movement, introduces small random variations in trajectory. This aleatory variable has a standard deviation of std_err (an aleatory variable set at the beginning, between 0.1 ° and 1°). The echoes that become part of the beam signals are then calculated, the contact established and the trace managed for all types of targets, without distinction. Figure 14 shows two examples of passing vessel trajectories, obtained using the centroids of the sonar contacts forming the trace, downstream of the smoothing filter. The yellow dot indicates the input and the red dot indicates the output. Horizontal and vertical axes in metres, (a) Vessel of length 100 m and speed 2.4 m / s (4.8 knots), present in the sonar sector for 273 pings. Theoretical TS at the transverse, 19.6 dB; the maximum TS value observed inside the contact, ping after ping, is shown in (c). (b) Vessel of length 32 m and speed 1.2 m / s (2.4 knots), present in the sonar sector for 426 pings. Theoretical TS at the transverse, 13.7 dB; the maximum TS value observed within the contact, ping after ping, is shown in (d). While in (a) the trajectory is straight, the vessel in (b) makes some trajectory corrections. The theoretical TS on the transverse is very close to that observed when the vessel passes at the point closest to the sonar (where the sonar sees it on the transverse). In (c) and (d) it can be seen that the difference in TS observed between the vessel seen from the transverse and the vessel itself seen from the bow or stern is about 15 dB.

[0413] Diver

[0414] For the simulation of sonar traces produced by diver, the following steps are preliminarily followed: o defining how many traces should be generated and the name to be assigned to them; o assigning the values to the variables deltat_ogg (2 s) and n_deltat_sonar (1 ), mentioned in the previous section; o defining the depth of the seabed (250 m), the speed of sound in the aquatic medium (1500 m / s), the maximum range of the sonar system (750 m), the number of beams (128) of the sonar system, the angular opening of the beams in the vertical plane (from 0 to 7.5 degrees downwards), the central frequency of the chirp pulse called ping (70 kHz), the frequency used by the sonar for quadrature sampling (25.6 kHz), the decimation factor of the beam signals (temporal compaction) operated by the sonar downstream of the adapted filter (33); o defining the minimum distance at which it is considered that the sonar can still detect the diver, min_det_r, set at 600 m. In doing so, the initial position of the diver in the region inspected by the sonar will be set at a distance between the distance min_det_r and the maximum range of the system (equal to 750 m).

[0415] The statistics of the aleatory variables involved change according to how the diver progresses: swimming or aided by a vehicle. In 70% of cases, in an aleatory manner, a swimming diver is instantiated whose statistics are as follows: o speed of the diver, s, uniform probability density, between 0.25 and 0.75 m / s (or even in unit / s, considering that for diver 1 unit is equal to 1 m), i.e. between 0.5 and 1.5 nautical knots; o standard deviation of the Gaussian error used for variations in the direction of motion in the horizontal plane, std_err, uniform probability density, between 5° and 15°; o maximum rotational speed of the diver, maxturn, uniform probability density, between 5 and 10 degrees / s; o target strength of the diver, TS, uniform probability density, between -25 dB and -20 dB.

[0416] In the remaining 30% of cases, a diver using a vehicle is instantiated whose statistics are as follows: o diver speed, s, uniform probability density, between 1 and 2 m / s (or even in unit / s, considering that for the diver 1 unit is equal to 1 m), i.e. between 2 and 4 nautical knots; o standard deviation of the Gaussian error used for variations in the direction of motion in the horizontal plane, std_err, uniform probability density, between 5° and 15°; o maximum diver rotation speed, maxturn, uniform probability density, between 10 and 20 degrees / s; o target strength of the diver, TS, set without aleatoriness equal to -15 dB.

[0417] Regarding the initial position of the diver, an angle between 0° and 360° is chosen with uniform probability density, called angle nit, which will indicate the direction in which the diver is detected for the first time. The distance at which the diver appears is chosen, with uniform probability density, between min_det_r (set at 600 m) and the maximum range of the system (equal to 750 m). The diver depth is set at 3 m. As already described above, the diver trajectory can point towards the sonar (direct trajectory, in 50% of cases, in an aleatory manner) or towards a turning point (trajectory with turning, in the remaining 50% of cases). In cases where the turning trajectory is instantiated, the turning point will be at a distance from the sonar between 100 and 300 m, chosen with uniform probability density, and along a direction equal to anglejnit where a uniform aleatory variable between -60° and 60° is added. The direction in which the diver will begin their movement is that which points towards the sonar, in cases of direct trajectory, or towards the turning point, in cases of trajectory with turning. These aspects are outlined in Figure 15.

[0418] After the initial condition of the diver has been set, the movement simulation begins and continues for a number n_deltat_sonar (equal to 1 ) of deltat_ogg time steps (equal to 2 s). At that point the data relating to the position of the diver (and all the punctiform diffusers that shape its body) passes to the sonar system simulator which calculates the echo received by the sonar in response to the transmitted ping, considering the characteristics of the target and the surrounding environment. Once the sonar simulation is finished, it resumes the diver movement for another n_deltat_sonar time steps, that is, until the next ping, and so on.

[0419] The simulation ends when the centroid of the positions of the N punctiform diffusers used to model the diver is outside the region inspected by the sonar system. Once the simulation is finished, the data accumulated by the sonar system, ping after ping, relating to the trace of the observed target, are saved in a file, provided that the target has not left the inspected region before at least 45 pings have been transmitted (at least 90 s of target's stay in the region inspected by the sonar). Once a trace has been recorded (or discarded if too short), the simulation of a new diver begins, until the number of traces set at the start has been saved.

[0420] Since the movement of the diver develops exclusively in the horizontal plane, a single Gaussian variable with a mean of zero is used which, added to the azimuth angle of the current direction of movement, introduces small random variations in trajectory. This aleatory variable has a standard deviation of std_err (an aleatory variable set at the beginning, between 5° and 15°). However, while for the vessel and for the individual fish the desired direction, in the next step, remains the direction that in the previous step has been altered by adding the Gaussian variable, in the case of diver the desired direction returns to the direction that, from the position reached, points towards the sonar or towards the turning point. In other words, the diver corrects their course deviations, step by step, so that the "mean trajectory" leads it to the sonar or turning point. In the case of a turning trajectory, when the diver approaches the turning point, the desired direction becomes the direction that takes them towards the sonar. However, the rotation of the diver is not instantaneous: it follows a curve attenuated by the fact that at each step they cannot make a rotation greater than maxturn deltat _ogg.

[0421] The echoes that become part of the beam signals are then calculated, the contact established and the trace managed for all types of targets, without distinction. Figure 16 shows four examples of diver trajectories, obtained using the centroids of the sonar contacts forming the trace, downstream of the smoothing filter. The yellow dot indicates the input and the red dot indicates the output. Horizontal and vertical axes in metres, (a) Diver advancing with vehicle at a speed of 1 .6 m / s (3.2 knots), present in the sonar sector for 218 pings. Theoretical TS -15 dB; mean observed TS, -17.2 dB. (b) Diver swimming forward at a speed of 0.4 m / s (0.8 knots), present in the sonar sector for 803 pings. Theoretical TS -25 dB; mean observed TS, -24 dB. (c) Diver swimming forward at a speed of 0.45 m / s (0.9 knots), present in the sonar sector for 705 pings. Theoretical TS -24 dB; mean observed TS, -23.6 dB. (d) Diver advancing with vehicle at a speed of 1.1 m / s (2.2 knots), present in the sonar sector for 264 pings. Theoretical TS -15 dB; mean observed TS, -16.7 dB. (a) and (b) have the wrong approach trajectory and must make a correction turn, (c) and (d) proceed towards the sonar instead. While the diver in (d) proceeds very straight, the divers in (a) and (b) make small oscillations around the mean trajectory.

[0422] Calculation of the beam signals

[0423] For the simulation of the beam signals, firstly, the values of some parameters of the system and the environment not used in the simulation of the movements of the different targets are fixed: the duration of the chirp pulse (T = 5 ms); the pulse band (B = 20 kHz); the minimum operating distance of the sonar (rmin = 5 m); the overall opening of the beams in the horizontal plane (ap_beam, equal, in the sonar in question, to twice the angular spacing between the beams, i.e. 2-3607128 = 5.6°); the absorption coefficient of the medium at the central frequency of the chirp pulse (absfct = 19 dB / km).

[0424] The echo produced by a given punctiform diffuser (either a fish belonging to the school or one of the diffusers used to model the body of the diver, the single fish or the submerged hull of the vessel) is calculated using the distance of the diffuser from the sonar, its target strength and the transmission loss calculated in the hypothesis of spherical propagation. The echo of the diffuser is therefore a copy of the transmitted chirp, suitably scaled in amplitude and delayed in time. This echo is added to the beam signals whose pointing direction has a distance, in modulus, less than 4.8° from the direction along which the diffuser is located.

[0425] When adding the echo to the beam signal, the echo itself is reduced based on the beam pattern of the receiving array. This beam pattern is in fact stored in a file, from 0° to 4.8°, proceeding at a 0.1° pace: while at 0° the beam pattern is 0 dB, moving 4.8° away from the pointing direction, the attenuation of the main lobe reaches 10 dB. Adding to the beam signal the echoes of all the diffusers placed in directions that are less than 4.8° away from the pointing direction, in modulus, all contributions are considered to have an attenuation, due to the beam pattern, of less than 10 dB. On the other hand, contributions attenuated beyond 10 dB are neglected.

[0426] Once the echoes of all the diffusers are scaled, delayed and added to the relevant beam signals, the calculation of the 128 beam signals ends and the adapted filter comes into play. This operation and all those that follow are described in the next section. It should be noted that when adding the ambient noise to the beam signals, low-pass filtering is performed to produce the in-phase and quadrature components of the band-pass white noise. For each component, starting from a white noise of appropriate power density, the low-pass filter limits the frequency to B / 2.

[0427] 3. From echoes to contacts

[0428] The sonar simulation reproduces as closely as possible the structure and values of the anti-terrorism sonar system implemented as described above. The following points outline the sequence of operations.

[0429] (1 ) For a given transmission of the chirp acoustic pulse (called ping), the echoes received by the transducers are calculated thanks to the simulation of the target and the estimation of the forward and return acoustic propagation losses, assuming for simplicity spherical wavefronts. The bandpass signals produced by the transducers are transformed into quadrature and sampled at the frequency of 25,600 Hz. Beamforming is performed with these signals. To the beam signals, a Gaussian white noise is added having an intensity such as to produce several contacts (i.e., regions exceeding the threshold) concentrated at a distance close to the range of the system, as will be clarified later. (2) Noisy beam signals are placed at the input of an adapted filter, the pulse response of which is a replica of the transmitted chirp.

[0430] (3) The signal at the output of the adapted filter is amplified by a time-varying-gain to compensate for the transmission loss, always assuming a spherical propagation. At the output of the adapted filter, for each beam, the envelope is maintained and the phase is neglected.

[0431] (4) The envelope of the beam signals is temporally compacted, inserting a new sample instead of 33 original samples (those at the frequency of 25,600 Hz). The new sample has a value equal to the maximum of the 33 original samples. In this way, the resolution in the range is reduced to about one metre. What is obtained is stored in memory for later use, creating a rectangular map on the angle-range plane. This will be referred to by the name intensity map. The number of rows will be equal to the number of beams, the number of columns equal to the number of time samples after compaction.

[0432] (5) The envelope of the temporally compacted beam signals is transformed into a logarithmic scale (decibels).

[0433] (6) A threshold is applied to all beam signals compacted and transformed to logarithmic scale using a fixed value. The value of the threshold is chosen once and for all in such a way that a target to which, in the simulation phase, a target strength (TS) of -26 dB is assigned is barely detectable at a distance of about 750 m. The threshold operation produces a binary map that is added (overlapping one by one) to the intensity map, without replacing it.

[0434] (7) On the binary map, referring to the angle-range plane, all the connected regions are identified, numbered and analysed. Connected region means that, for each sample of the region itself (understood as pixels of the binary map with value 1 , that is, above threshold), at least one of the eight regions surrounding it also has value 1. In image processing this type of region is called 8-connected.

[0435] (8) Among all the connected regions identified on the binary map, the best one is sought to create a trace (if it is not yet present) or to continue the trace already started in the previous pings. This choice is based on the satisfaction of elementary and simplistic conditions, considering, on the one hand, that the focus is not tracking, on the other hand, that only one trace is activated and maintained. If no connected region meets the above conditions, all regions are discarded and the start or continuation of the trace is deferred to the next ping. Specifically, to start a trace, the region with the maximum intensity is chosen: it becomes the first contact of the trace. To continue the trace, the point at which the contact is expected to be found at the next ping is calculated, in the (certainly simplifying) hypothesis that it proceeds straight at a constant speed. This point is called the expected point. From all the connected regions, the region whose weighted centroid is closest to the expected point is chosen. If the distance between the centroid of the chosen region and the expected point is less than a threshold of reasonableness, it is decided that this region becomes contact and becomes part of the trace.

[0436] (9) If one (and only one) of the connected regions is assigned to the trace, this region is indicated by the contact name and is characterized by eleven morphometric and energy values, detailed in the following section. Among these eleven values there are intensity and coordinates of the weighted centroid, calculated for all connected regions, already used in the previous point to carry out tracking.

[0437] 4. Characterisation of the contact

[0438] The eleven characteristics used to describe the connected region identified as a contact are as follows, preceded by information relating to the time at which the contact itself was detected.

[0439] (C1 ) Time index at which the ping that gave rise to the [dimensionless] contact in question was transmitted. Indicates the number of time intervals used in the simulation of the target's movement, called deltat_ogg [s], at which the ping was transmitted.

[0440] (C2) Range coordinate of the centroid of the connected region (expressed in pixels of the horizontal axis of the binary map). (C3) Angle coordinate in of the centroid of the connected region (expressed in pixels of the vertical axis of the binary map).

[0441] (C4) Area: number of samples of the angle-range plane (in other words, number of pixels of the binary map) that make up the connected region.

[0442] (C5) Eccentricity: eccentricity of the ellipse possessing the same second order moments as the region. The eccentricity is calculated as the ratio between the distance separating the two foci of the ellipse and the length of the major axis.

[0443] (C6) Extent: ratio between the number of samples of the anglerange plane (in other words, the number of pixels of the binary map) that make up the connected region and that of the samples contained in the bounding box. The latter is the smallest rectangle that contains the region.

[0444] (C7) Orientation: angle between the range axis (horizontal axis of the binary map) and the major axis of the ellipse that has the same second order moments as the region.

[0445] (C8) Maxintensity: maximum value of the intensity of the samples of the map of the intensities that make up the region, converted to a logarithmic scale.

[0446] (C9) Minlntensity: minimum value of the intensity of the samples of the intensity map that make up the region, converted to a logarithmic scale.

[0447] (C10) Meanintensity: mean value of the intensity of the samples of the map of the intensities that make up the region, converted to a logarithmic scale;

[0448] (C11 ) Range coordinate of the weighted centroid of the connected region (expressed in pixels). In this case the centroid is calculated using the intensity map, taking into account the different intensities of the samples that make up the connected region.

[0449] (C12) Angle coordinate of the weighted centroid of the connected region (expressed in pixels). In this case the centroid is calculated using the intensity map, taking into account the different intensities of the samples that make up the connected region.

[0450] These twelve characteristics of the contact are stored in the trace and it is therefore possible, for each of them, to establish a time series, by scrolling the trace, from its start until the current instant (or until its end, if already ended). The time series of each feature will have a number of samples equal to the number of contacts that make up the trace. These samples are spaced apart from each other by an interval equal to the time between two successive pings. However, the contact may not be detected at all pings. So, more generally, the time distance between two successive samples will be equal to an integer multiple of the time elapsed between two pings. The characteristics of the contact can obviously be varied both in number and in type to optimize the results also on the basis of real-world observations.

[0451] 5. From Time Series to Features

[0452] The feature vector, successfully tested in this preliminary phase, is composed of 25 values, aimed at characterizing both the trajectory achieved by the target, from the start of the trace to the instant in question, and the echo produced by the target. Obviously, also in this case, the number and type of features can be widely varied to optimize the results also based on real-world observations. The vector is designed so that it can be calculated regardless of the number of contacts that make up the trace, provided that there are at least 15 of said contacts (equal to 30 s of target observation, assuming that the detection takes place at all the pings transmitted).

[0453] Of the 25 scalar values that make up the feature vector, 20 features are related to local quantities (i.e. , quantities that are calculated for each contact that makes up the trace; e.g., instantaneous speed, contact area, etc.). Five features are instead linked to global quantities, intended to characterize the shape of the trajectory, from the start to the point in question. The straightness index is an example. Considering that the local quantities give rise to time series of length equal to the number of contacts that make up the trace, the mean and, in many cases, the standard deviation of the aforementioned time series are used as features.

[0454] The time series of the characteristics of the contact, which have an impact on both local and global features, as well as the time series of local quantities (for example, the instantaneous angular speed) are obviously very noisy. It is therefore necessary, before using these, to proceed with a smoothing operation that maintains the underlying trend as much as possible, while attenuating the noise that disturbs it. For this purpose, it was chosen to perform a linear regression using a movable window that encompasses 15 samples of the time series to be filtered. In addition to the sample in question, 7 front samples and 7 rear samples are used. The window is moved forward one sample at a time, until the entire time series is filtered.

[0455] For the calculation of the features, similar time series are added to the time series of the range and angle coordinates of the weighted centroid (previously indicated with C11 and C12, measured in pixels) in which the coordinates of the weighted centroid are expressed in polar coordinates (actrd and tctrd, expressed respectively in metres and seconds) and in Cartesian coordinates (xctrd and yctrd, expressed in metres), as detailed in the section entitled The dataset. These four time series, actrd, tctrd, xctrd and yctrd are used in the calculation of features only after their filtering through the smoothing operation.

[0456] The following lists and briefly describes the 25 features used.

[0457] Features linked to local quantities

[0458] (F1 )-(F2) Mean and standard deviation of the speed in instantaneous range. Using the filtered coordinates of the weighted centroid on the angle-range plane, the speed along the range axis is calculated for each pair of successive contacts. Before calculating the mean and standard deviation, the time-series of the speed is further filtered with the smoothing operation. (F3)-(F4) Mean and standard deviation of the instantaneous angle speed. Using the filtered coordinates of the weighted centroid on the angle-range plane, the speed along the angle axis is calculated for each pair of successive contacts. Before calculating the mean and standard deviation, the time-series of the speed is further filtered with the smoothing operation.

[0459] (F5)-(F6) Mean and standard deviation of the score in the "target shooting". The sonar system is in the centre of a hypothetical circular "target", with a fixed radius (200 m in this case). Each time it moves from one contact to the next, along the trace, the direction the target is pointing is calculated. To do this, the filtered coordinates of the weighted centroid are used. Some references on geometry useful for this calculation are contained in Appendix A. If the target in its movement points outside of the "target", the score is zero. If it points inside the "target", the score is inversely proportional to the distance from the sonar (200 points if it is aimed at the centre of the "target", zero points if it is aimed at the outer limit). A time series of points is thus obtained. Before calculating the mean and standard deviation, the time-series is further filtered with the smoothing operation.

[0460] (F7)-(F8) Mean and standard deviation of Area of the contact. The time-series of the values of the C4 characteristic of the contact is considered. Before calculating the mean and standard deviation, the Area time-series is filtered with the smoothing operation.

[0461] (F9)-(F10) Mean and standard deviation of Eccentricity of the contact. The time-series of the values of the C5 characteristic of the contact is considered. Before calculating its mean and standard deviation, the Eccentricity time-series is filtered with the smoothing operation.

[0462] (F11 )-(F12) Mean and standard deviation of the Extent of the contact. The time-series of the values of the C6 characteristic of the contact is considered. Before calculating its mean and standard deviation, the Extent time series is filtered with the smoothing operation. (F13)-(F14) Mean and standard deviation of the Orientation of the contact. The time-series of the values of the C7 characteristic of the contact is considered. Before calculating the mean and standard deviation, the Orientation time-series is filtered with the smoothing operation.

[0463] (F15)-(F16) Mean and standard deviation of the TSstim of the contact. The time series of the values of the C10 characteristic (Meanintensity) of the contact, corrected by an empirical constant to approach the expected target strength (TS), is considered. Before calculating the mean and standard deviation, the TSstim time-series is filtered with the smoothing operation.

[0464] (F17) Mean of the TSmin of the contact. The time series of the values of the C9 characteristic (Minlntensity) of the contact, corrected by an empirical constant to approach the expected TS is considered. Before calculating the mean, the TSmin time-series is filtered with the smoothing operation.

[0465] (F18) Mean of the TSmax of the contact. The time series of the values of the C8 characteristic (Maxintensity) of the contact, corrected by an empirical constant to approach the expected TS is considered. Before calculating the mean, the TSmax time-series is filtered with the smoothing operation.

[0466] (F19) Mean of the range separation between weighted centroid and contact centroid. The time series obtained by calculating the difference between the values of the C11 characteristic and those of the C2 characteristic of the contact is considered. Before calculating the mean, the time-series thus obtained is filtered with the smoothing operation.

[0467] (F20) Mean of the angle separation between the weighted centroid and the contact centroid. The time series obtained by calculating the absolute value of the difference between the C12 characteristic and the C3 characteristic of the contact is considered. Before calculating the mean, the time-series thus obtained is filtered with the smoothing operation. Features linked to global quantities

[0468] (F21 ) Straightness index. This is the ratio between the length of the straight segment that joins the initial point to the end point of the trajectory achieved by the target (up to the point in question) and the distance that is travelled following, point by point, the trajectory itself. The filtered coordinates of the weighted centroid are used for the calculation.

[0469] (F22) Sinuosity index. This is a quantity linked to the statistical characterization of an aleatory search path in which the moments of three aleatory variables come into play: the distance traveled between two successive contacts, the cosine of the angle identified by the trajectory when considering a triplet of successive contacts, the sine of the same angle. Among the different formulations, it was chosen to use equation (10) from [Ben04], In [Ben04] it is also illustrated how the sinuosity value depends on the mean distance traveled by the target between two subsequent contacts. The filtered coordinates of the weighted centroid are used for the calculation.

[0470] (F23) Net speed in range. This is the speed obtained by dividing the distance in range between the end point and the initial point of the trajectory considered for the time taken to travel the trajectory itself. The filtered coordinates of the weighted centroid are used for the calculation.

[0471] (F24) Net speed in angle. This is the speed obtained by dividing the distance at an angle between the end point and the initial point of the trajectory considered for the time taken to travel the trajectory itself. The filtered coordinates of the weighted centroid are used for the calculation.

[0472] (F25) Mean Squared Displacement Over Time. First, add the variance of the x-coordinate of the weighted centroid along the trajectory to the variance of the y-coordinate. Finally, the square root of this sum is divided by the time it took the target to travel the trajectory, up to the point in question. The filtered coordinates of the weighted centroid are used for the calculation. The feature vector is calculated multiple times for each trace. For training, the feature vector is calculated and inserted into the training set once the fifteenth contact is reached and, subsequently, at the rate of thirty contacts. In the test phase, however, the feature vector is calculated after the first fifteen contacts and can be recalculated at each subsequent contact. Each calculated vector will then be sent to the classifier for subsequent assignment to one of the classes provided.

[0473] 6. The dataset

[0474] Using simulation techniques and codes, a dataset was composed with a number of traces, of both neutral targets and threatening targets, sufficient for training and testing methods for threat detection and target classification.

[0475] Table 1

[0476] Table 1 illustrates the reference example regarding the composition of the dataset, divided between training sets (the traces used for training) and test sets (the traces used for performance evaluation). It is worth anticipating that, depending on the working assumptions applied to the detection or classification method, the training set will be used in whole or in part. The largest number of traces prepared for the diver class (100 traces versus 80 traces for each of the other classes) is due to having enclosed in a single class the various types of diver: with or without vehicle; heading straight for the sonar or making a course correction. In order to have a sufficient statistic of the different possible combinations for the diver class, it was necessary to prepare 60 traces for training and 40 for the test.

[0477] Each of the Matlab files mentioned in Table 1 contains data that makes it possible to trace some characteristics of the environment, the target and the assumed sonar system, as well as the path taken. Obviously, only a part of the stored data is used later, in the detection and classification phase. The data are as follows: xctrd: vector, x-coordinate of the weighted centroid of the contact [m], expressed in the reference system centred in the sonar (called global). The vector has a length equal to the number of contacts that form the trace. yctrd: vector, y-coordinate of the weighted centroid of the contact [m], expressed in the reference system centred in the sonar (called global). The vector has a length equal to the number of contacts that form the trace. actrd: vector, angle of the weighted centroid of the contact [rad], expressed in the reference system centred in the sonar (called global). The angle is between 0 and 2D rad, where 0 indicates the positive half axis of the x-axis. The vector has a length equal to the number of contacts that form the trace. tctrd: vector, time instant at which the echo relative to the weighted centroid of the contact [s] is received, assuming a transmission of infinitesimal duration at instant 0. The distance of the weighted centroid of the contact from the origin of the reference system centred in the sonar (called global) is equal to the value of this vector multiplied by the speed of sound (c) and divided by 2. The vector has a length equal to the number of contacts that form the trace. cntct_prop: matrix, contains the geometric, morphometric and energetic characteristics of each contact. The number of rows is equal to the number of contacts that make up the trace. There are 12 columns, i.e. the number of measured characteristics. The 12 characteristics of the contact have already been listed and illustrated in the section entitled Characterisation of the contact. deltat_ogg: scalar, time interval [s] used in the simulation of the movement of the target. n_deltat_sonar: scalar, number of deltat_ogg intervals that elapse between the generation of two successive sonar pings. c: scalar, speed of propagation of acoustic waves in the aquatic medium [m / s], fs: scalar, time sampling frequency used by the sonar system [Hz],

[0478] DecFact: scalar, a sample decimation factor used for temporal compaction of the envelope of beam signals produced by the sonar system, as described in the section entitled From echoes to contacts. nbeams: scalar, number of beams generated by the sonar system. sinit: vector with three elements, contains the coordinates in the reference system centred in the sonar (called global) of the origin of the local reference system used during the simulation of the movement of the target. The coordinates are expressed in metres. Indicates the position of the centre of the target, in the global reference system, at the moment when the target itself enters the spatial region monitored by the sonar. unitl: scalar, length in metres of a unit, the arbitrary unit of measurement used in the simulation phase [m / unit]. In the case of a school of fish, single fish or vessel is the length in metres of the single fish or vessel (all with a conventional length of 1 unit). In the case of a diver (also of conventional length equal to one unit) it is arbitrarily set equal to 1 m / unit. s: scalar, target speed [unit / s]. In the case of schools of fish, the speed is that of each individual. The product s-unitl indicates the speed in metres per second.

[0479] TS: scalar, target strength of the target [dB],

[0480] Downstream of the simulation, the traces are saved only when their length exceeds 45 pings transmitted (equal to 90 s). If the target exits the region inspected by the sonar or the trace stops before that interval, the trace is not considered significant for learning or verification, so it is not allowed to be part of the dataset. A duration of 45 pings does not mean that the trace must contain 45 contacts: for some pings the target echo may not be detectable and therefore not generate the corresponding contact. The number of contacts that make up the trace may therefore be less than 45, although this is a rather rare event.

[0481] 7. Training sets and classification options

[0482] This section considers detection and classification in relation to the completeness of the training set available. Threat detection is a binary response operation, aimed at distinguishing the presence of the threat from that of a generic target. The target classification is a higher level operation, aimed at identifying which target is producing the echo, whether it is threatening or neutral.

[0483] Detection should not be confused with traditional target detection, in which the presence of a generic object is detected through energy measurements. Traditional detection is a step that the sonar must perform to identify the contacts, in view of their possible attribution to the traces. Threat detection is a true binary classification, based on machine learning techniques that, by exploiting the data extracted from the available traces (i.e., from the training set), learn to distinguish between neutral and threatening targets.

[0484] The different complexity of the two operations, detection and classification, requires that a different amount of training data be used to achieve satisfactory operation. The different options in question are outlined in Table 2. The three different training sets are designed to accompany the collection of experimental data once the sonar system is put into service in a given sea region. We will start by collecting nonthreatening traces (T1 : fish, school of fish, passing vessel), to which some threatening traces will be added, in very small numbers (T2), to subsequently arrive at a balanced training set, in which the different classes of targets are all present with a congruent number of traces (T3). It is clear that, with the T1 training set, it will only be possible to attempt the detection of the threat (the latter imagined as a different trace from those known - for this reason the operation is carried out through anomaly detection), with T2 it will be possible to significantly improve the performance of the detection of the threat (by operating the so-called imbalanced detection) and it will be possible to test the classification of the target (said imbalanced classification), while with T3 it will be possible to carry out the classification of the target (said balanced classification) completely.

[0485] Although the T2 training set is used for both threat detection and target classification, it is important to highlight a conceptual difference with considerable application implications. In the case of imbalanced detection, it is not necessary that the neutral traces used for training be divided into classes fish, school of fish, vessel. It is sufficient to know with certainty that these are neutral traces; if they were assigned to the different classes, this information will not be exploited. Conversely, in order to train the model for imbalanced classification, the assignment of each neutral trace to one of the aforementioned classes is indispensable information, in the absence of which imbalanced detection must be limited. Therefore, during the training phase, classification requires and exploits more information than detection. In this regard, it should be remembered that the results of the classification, being a more refined operation than the detection, can also be used to carry out the detection of the threat, according to the classify-before-detect paradigm. These results can then be evaluated using the same metrics adopted for detection.

[0486] To avoid implementation complications, an attempt was made to answer the detection and classification needs set forth above through different configurations of a single machine learning technique. Following numerous experiments and comparisons, a classic technique was chosen, and one that is extremely widespread and favoured: support-vector machines (SVM).

[0487] Table 2

[0488] The individual options presented in Table 2 can be addressed with other machine learning techniques, obtaining results that are just as good, if not slightly better, than those offered by SVM. However, it was preferred to choose a single technique, able to meet all the options provided in the table with good performance. SVM was the best in this regard.

[0489] 8. D1 - Anomaly Detection

[0490] A one-class SVM classifier with Gaussian kernel function is trained to recognize samples that belong to the only class of which it has acquired knowledge during training. For training, only the T1 training set is actually used, in which only neutral traces are present, to such an extent that all neutral classes are adequately represented. In this way, the one-class classifier performs the anomaly detection operation, in which the anomaly to be detected represents the threat or the trace of a neutral class not shown in the training set. In other words, an attempt is made to perform threat detection without having some prior knowledge of the threat, the latter being limited to the neutral traces of the different typologies. A brief description of how one-class SVMs work can be found in the section entitled Overview of SVM classifiers.

[0491] Operations and software pipeline Table 1 shows that the neutral traces available for the T1 training set are a total of 150, equally divided between the three classes considered. In this particular type of classification, 90 neutral traces are used, choosing 30 at random for each class.

[0492] Starting from the fifteenth contact of each trace and proceeding in steps of 30 contacts, until the end of the trace is reached, a feature vector is extracted and stored in a matrix called TabelG. The number of vectors extracted for each trace is not fixed, it depends on the number of contacts that make up the trace. The feature vector is extracted using the name of the trace and the number of contacts to be considered as input, thus producing the CFV vector as output. Each feature vector occupies the first 25 columns of a row of the matrix; the next vector will occupy the row below it. Column number 26 of TableG is instead used to enter the label regarding the class to which the trace from which the vector has been extracted belongs: 1 for the passing vessel, 2 for the fish, 3 for the school of fish.

[0493] Once TableG with the 90 neutral traces is completed, a one-class classifier (called model) is trained using the Gaussian kernel (also called RBF) having a scale parameter (KernelScale) equal to 2.5 and a regularization parameter (BoxConstraint) equal to 1 . In addition, feature normalization is applied. Although TableG contains an adequate representation of the three neutral classes, since it is a matter of training a one-class classifier, all the labels associated with the feature vectors are set equal to 1 , as they all belong to the known class.

[0494] For the training of a one-class SVM classifier, it is necessary to specify the value of a parameter, v (Nu), according to which the quality of the results varies significantly. The value of v is in the range from 0 to 1 . In order to identify a value of v that provides good performance (not necessarily the absolute best) the following procedure has been developed. Model training is repeated for many values of v, from 0.05 to 0.8, with step 0.01. At each value of v, the trained model is applied to the classification of the training set samples (the same used for training) and the mean of the scores assigned by the model to these samples is calculated. At the end, the value v for which the mean score is closest to 1 .5 is chosen. With the value of v (Nu) chosen, the final one-class SVM model is trained.

[0495] It should be noted that a positive score indicates that the sample belongs to the known class (that of neutral targets), while a negative score indicates that the sample represents an anomaly (and is therefore threatening). The training set samples are therefore expected to obtain broadly positive scores. The value of the latter depends on v and the cardinality of the training set. In general, when the cardinality is set, as v increases, the mean score increases and both the probability of threat detection (PD) and the probability of false alarm (PFA) decrease. It is therefore a matter of finding the most suitable compromise for the application. For a given mean score, increasing the cardinality of the training set decreases the PFA while PD first increases and then decreases. In the case in question, a mean score of 1.5 and a number of traces for each neutral target between 20 and 30 were found to be the best choices.

[0496] The final one-class SVM model is referred to as the SVMModel.

[0497] The one-class classifier test is carried out using the test set, consisting of a total of 130 traces (see Table 1 ). From the fifteenth contact of each trace a feature vector is extracted at each contact, until the end of the trace itself is reached. Then, for a given trace the number of feature vectors that will be extracted and sent to the one-class classifier will be equal to the number of contacts that make up the trace minus 15. The feature vector is calculated using the data of the trace already loaded in the workspace and, receiving the number of contacts to be considered as input, outputs the vector featvect. This vector is immediately classified using SVMModel to decide the label, 1 or 2, to be assigned to the vector itself.

[0498] The results of the classifications are entered into the PredictionTable matrix, using one row for each trace of the test set (thus, 130 rows in total). The first column is the correct label of the trace (from 1 to 4), the second column is an unimportant sequential number, the columns from 3 onwards are the scores assigned by the one-class classifier to all the feature vectors extracted from the trace, starting from the fifteenth contact and proceeding contact after contact. The number of subsequent scores assigned to the trace will therefore be equal to the number of contacts that make up the trace minus 15. It should be noted that a score greater than zero indicates a neutral trace while a score less than zero indicates an anomaly, that is, a threatening trace.

[0499] At the end, the classifications in PredictionTable are used to calculate metrics suitable for the statistical evaluation of the results obtained. These metrics are entered into the ResultTable matrix. The first two columns contain respectively the class label, from 1 to 4, and the number of traces of that class used for the test. The results for a given class are found starting from column 3, divided into two rows: in the one above we read the number of neutral traces that contains a number of contacts greater than or equal to the number of the column + 15 - 3 (starting from 30 or 40 and slowly descending to 1 ); in the one below we find the fraction of these traces classified correctly. Since there are 4 classes, rows 1 to 8 are occupied by the above information. Interestingly, the fraction of class 4 traces classified correctly (information found in row 8 of the matrix), corresponds to the probability of detection of the threat (PD). Row 9 is not used. Finally, in row 10 there is the calculation of the overall accuracy (OA, that is, the probability of correct classification, considering all the samples of the test set), while in row 11 there is the calculation of the probability of false alarm (PFA, that is, the probability that a neutral trace is classified as diver). Reading the probability values from column 3 onwards, their trend as a function of time can be deduced: column 3 corresponds to the fifteenth contact and increases by one contact each time there is a move to the right of a column. The time interval between two successive contacts is very often equal to the time interval between two successive pings. However, there are cases in which one or more pings have not given rise to the contact and therefore the time between two subsequent contacts is an integer multiple of the interval between subsequent pings. Results

[0500] Figure 17 shows the trend of the three metrics for performance evaluation (i.e., OA: overall accuracy, PD: prob, detection, PFA: prob, false alarm), as the number of contacts in the trace increases, starting from contact number 15. In order to appreciate the variability of the results linked to the random choice of the 90 neutral traces (30 for each class) used for training, training and testing, they were repeated 5 times. The figure then shows, for each metric, 5 different curves: those for OA, those for PD and those for PFA.

[0501] It is immediately noticeable that the performance is modest and has strong variability between the 5 repetitions of training and testing. The PD, evaluated on the 40 threatening traces that are part of the test set, is initially between 50% and 75%, it remains above 70% oscillating around 80% starting from contact number 65 (after about 2 minutes and 10 seconds from the first detection), finally it gradually rises and, starting from contact number 250 (after about 8 minutes and 20 seconds), it remains above 85%.

[0502] Meanwhile, the PFA, evaluated on the 90 neutral traces that are part of the test set, always remains high. Initially equal to 35%, it decreases without reaching reasonably low values. In general, it can be stated that it oscillates around 20%. To reduce the PFA, it would be necessary to increase the value of v or increase the number of neutral traces that make up the training set. However, having already entered 90 traces in the training set, both of these actions would reduce the PD, whose values are already quite modest.

[0503] In summary, the total absence of Diver class traces in the training set limits the performance of the classifier in the threat detection operation. The detection of the anomaly (i.e. the trace of a diver), after about 2 minutes from the appearance of the contact, has a success rate of around 80%, accompanied by a probability of false alarm that oscillates around 20%. 9. D2 - Imbalanced Detection

[0504] An SVM binary classifier with Gaussian kernel function is trained to decide between two classes, neutral target and threatening target, using the T2 training set, in which there are many neutral traces and very few threatening traces. In this case, the binary classifier performs the threat detection operation, without any more refined classification. To manage the imbalance between the neutral and threatening traces that make up the training set, non-uniform misclassification costs are assigned, thus weighting more heavily on the (otherwise too numerous) missing alarms. A brief description of how the SVM classification works in unbalanced cases can be found in the section entitled Overview of SVM classifiers.

[0505] Operations and software pipeline

[0506] Table 1 shows that there are a total of 150 neutral traces available for training and 60 threatening traces. In this particular type of classification, 70 neutral traces are used, chosen at random and without imposing proportionality constraints between the three classes of neutral targets and 3 threatening traces. Although there are only three threatening traces, they are carefully chosen, so as to be (albeit to a minimal extent) representative of the different types of diver and their different behaviours: a diver with a vehicle that, arriving at about 150 m from the sonar, notices that it is pointing away and makes a turn to correct its trajectory, heading towards the sonar; a diver without a vehicle with TS of -25 dB that is detected at about 600 m from the sonar, proceeds very slowly and corrects their trajectory at about 300 m from the sonar; a diver with a vehicle that makes an almost perfect trajectory towards the sonar.

[0507] In total, the training set consists of 73 traces: 70 neutral and 3 threatening. Starting from the fifteenth contact of each trace and proceeding in steps of 30 contacts, until the end of the trace is reached, a feature vector is extracted and stored in a matrix called TabelG. The number of vectors extracted for each trace is not fixed, it depends on the number of contacts that make up the trace. The feature vector is extracted using the name of the trace and the number of contacts to be considered as input, thus producing the CFV vector as output. Each feature vector occupies the first 25 columns of a row of the matrix; the next vector will occupy the row below it. Column number 26 of TableG is instead used to enter the label regarding the class to which the trace from which the vector has been extracted belongs: 1 for neutral traces, 2 for threatening traces.

[0508] Once TableG has been completed for the 73 traces considered (of which 70 were randomly chosen from all neutral traces), a binary classifier (called model) is trained using the Gaussian kernel (also called RBF) with a scale parameter (KernelScale) equal to 5 and a regularization parameter (BoxConstraint) equal to 1. Feature normalization and the following misclassification cost matrix are also applied:

[0509] In this way, classifying a threat as a neutral trace (no alarm) will cost 50 times more than classifying the neutral trace as a threat (false alarm). Weighing the cost of missing alarms more heavily, on the one hand, has a clear link with the use of the sonar in question for surveillance purposes, and on the other hand, allows for balancing the numerical scarcity of threatening traces. In the absence of this correction, the aforementioned scarcity would lead to neglecting, during the training process, their correct classification, focusing more on the classification of the most numerous traces, that is, the neutral ones.

[0510] Finally, the SVM model produced, referred to as trainedModel, and the matrix of feature vectors used for its training, TableG, are saved.

[0511] The test of the binary classifier is carried out using the test set, consisting of a total of 130 traces (see Table 1 ). From the fifteenth contact of each trace a feature vector is extracted at each contact, until the end of the trace itself is reached. Then, for a given trace, the number of feature vectors that will be extracted and sent to the binary classifier will be equal to the number of contacts that make up the trace minus 15. The feature vector is calculated using the data of the trace already loaded in the workspace and receiving as input the number of contacts to be considered, producing the vector featvect as output. This vector is immediately classified to decide the label, 1 or 2, to be assigned to the vector itself.

[0512] The results of the classifications are entered into the PredictionTable matrix, using one row for each trace of the test set (thus, 130 rows in total). The first column is the correct label of the trace (1 if neutral, 2 if threatening), the second column is an unimportant sequential number, columns a from 3 onwards are the labels assigned by the classifier to all the feature vectors extracted from the trace, starting from the fifteenth contact and proceeding contact by contact. The number of subsequent classifications assigned to the trace will therefore be equal to the number of contacts that make up the trace minus 15.

[0513] At the end, the classifications in PredictionTable are used to calculate metrics suitable for the statistical evaluation of the results obtained. These metrics are entered into the ResultTable matrix. Neglecting the first two columns, the relevant results are found starting from column 3: row 1 is the number of neutral traces containing a number of contacts greater than or equal to the number of the column + 15 - 3 (starting from 90 and slowly descending to 1 ); row 2 is the fraction of these traces correctly classified; row 3 is the number of threatening traces containing a number of contacts greater than or equal to the number of the column + 15 - 3 (starting from 40 and slowly descending to 1 ); row 4 is the fraction of such traces correctly classified; row 5 is meaningless; row 6 is the overall accuracy (the probability of correct classification, including both classes); row 7 is the probability of detection (PD, the probability of detecting the threat when it is present, corresponds to row 4); row 8 is the probability of false alarm (PFA, the probability of detecting the threat when it is absent). Reading the probability values from column 3 onwards, their trend as a function of time can be deduced: column 3 corresponds to the fifteenth contact and increases by one contact each time there is a move to the right of a column. The time interval between two successive contacts is very often equal to the time interval between two successive pings. However, there are cases in which one or more pings have not given rise to the contact and therefore the time between two subsequent contacts is an integer multiple of the interval between subsequent pings.

[0514] Results

[0515] Figure 18 shows the trend of the three metrics for performance evaluation (i.e., OA: overall accuracy, PD: prob, detection, PFA: prob, false alarm), as the number of contacts in the trace increases, starting from contact number 15. In order to appreciate the variability of the results linked to the random choice of the 70 neutral traces used for training, training and testing were repeated 5 times. The figure then shows, for each metric, 5 different curves: those for OA, those for PD and those for PFA.

[0516] It should be noted that the PD, evaluated on the 40 threatening traces that are part of the test set, is initially low, but reaches 90% at contact number 40 (i.e. after about 1 minute and 20 seconds from the first detection of the target), remaining always above that value. In addition to contact no. 90 (about 3 minutes after first detection), PD exceeds 95% and stays above this.

[0517] At the same time, the PFA, evaluated on the 90 neutral traces that are part of the test set, immediately remains low, never exceeding 2.2% and falling to infinitesimal values when the contacts exceed 100.

[0518] The fact that the OA is better than the PD indicates that the classification system obtains better performance for the traces it knows better (the neutral traces, which are better represented in the training set) than those obtained for the traces it knows little about (the threatening traces, for which the training set has only three samples). The reason must be attributed to the imbalance of the training set, which the cost matrix remedies to a considerable, albeit imperfect, extent.

[0519] Despite an extremely unbalanced training set, with very minimal threat traces, the threat detection system achieves high level performance (with 95% PD and PFA close to zero) provided that it can examine trajectories of sufficient length. After about 1 minute and 20 seconds from the first contact the performance becomes good (PD = 90% and PFA = 2.2%) and after about 3 minutes it reaches the optimal level (PD = 95% and PFA ~ 0).

[0520] Finally, it should be noted that by changing the misclassification cost in the matrix, by moving moderately away from the value 50, performance remains almost unchanged. By moving further away, going below the value 10 significantly reduces the PD, while going above 100 shows a certain increase in the PD accompanied by a significant (and unacceptable) increase in the PFA.

[0521] 10. C1 - Imbalanced Classification

[0522] A multi-class SVM classifier, with a Gaussian kernel function, is trained to decide between the four possible target classes using the T2 training set, in which there are many traces of the three neutral classes (vessel, fish, school of fish) and very few traces of the threatening class: the diver class. To manage this imbalance, non-uniform misclassification costs are assigned, weighting more heavily on the (otherwise too numerous) missing alarms for the threatening class. A brief description of how multi-class SVM classifiers work with unbalanced training sets can be found in the section entitled Overview of SVM classifiers.

[0523] Operations and software pipeline

[0524] Table 1 shows that there are a total of 150 neutral traces available for training and 60 threatening traces. In this particular type of classification, 70 neutral targets are used, chosen at random and without imposing proportionality constraints between the three classes of neutral and 3 threatening targets. Although there are only three threatening traces, they are carefully chosen, so as to be (albeit to a minimal extent) representative of the different types of diver and their different behaviours: a diver with a vehicle that, arriving at about 150 m from the sonar, notices that it is pointing away and makes a turn to correct its trajectory, heading towards the sonar; a diver without a vehicle with TS of -25 dB that is detected at about 600 m from the sonar, proceeds very slowly and corrects their trajectory at about 300 m from the sonar; a diver with a vehicle that makes an almost perfect trajectory towards the sonar.

[0525] In total, the training set consists of 73 traces: 70 neutral and 3 threatening. Starting from the fifteenth contact of each trace and proceeding in steps of 30 contacts, until the end of the trace is reached, a feature vector is extracted and stored in a matrix called TabelG. The number of vectors extracted for each trace is not fixed, it depends on the number of contacts that make up the trace. The feature vector is extracted using the name of the trace and the number of contacts to be considered as input, producing the CFV vector as output. Each feature vector occupies the first 25 columns of a row of the matrix; the next vector will occupy the row below it. Column number 26 of TableG is instead used to enter the label regarding the class to which the trace from which the vector has been extracted belongs: 1 for the vessel, 2 for the fish, 3 for the school of fish, 4 for the diver.

[0526] Once TableG has been completed for the 73 traces considered (of which 70 were randomly chosen from all neutral traces), a multi-class classifier (called model) is trained using the Gaussian kernel (also called RBF) having a scale parameter (KernelScale) equal to 5 and a regularization parameter (BoxConstraint) equal to 1. To realize the multiclass classifier through multiple SVM binary classifiers, the classic one- versus-one strategy (onevsone fixed coding parameter) was chosen. Feature normalization and the following misclassification cost matrix are also applied:

[0527] In this way, classifying a threat (fourth row of the matrix) as a neutral trace (the first three columns of the matrix) will cost 50 times more than classifying any neutral trace incorrectly. Giving the cost of missing alarms higher weight, on the one hand, has a clear link with the use of the sonar in question for surveillance purposes, on the other hand, it make it possible to balance the numerical scarcity of the threatening traces. In the absence of this correction, the aforementioned scarcity would lead to the correct classification being neglected during the training process, focusing more on the correct classification of the most numerous, that is, the neutral traces.

[0528] Finally, the SVM model produced, referred to as trainedModel, and the matrix of feature vectors used for its training, TableG, are saved.

[0529] The multi-class classifier test is carried out using the test set, consisting of a total of 130 traces (see Table 1 ), starting from the fifteenth contact of each trace, a feature vector is extracted at each subsequent contact, until the end of the trace itself is reached. Then, for a given trace, the number of feature vectors that will be extracted and sent to the multi-class classifier will be equal to the number of contacts that make it up minus 15. The feature vector is calculated using the data of the trace already loaded in the workspace and receiving as input the number of contacts to be considered, producing the vector featvect as output. This vector is immediately classified to decide the label (1 for the vessel, 2 for the fish, 3 for the school of fish, 4 for the diver) to be assigned to the vector itself.

[0530] The results of the classifications are entered into the PredictionTable matrix, using one row for each trace of the test set (thus, 130 rows in total). The first column is the correct label of the trace, from 1 to 4, the second column is an unimportant sequential number, the columns from 3 onwards are the labels assigned by the classifier to all the feature vectors extracted from the trace, starting from the fifteenth contact and proceeding contact after contact. The number of subsequent classifications assigned to the trace will therefore be equal to the number of contacts that make up the trace minus 15.

[0531] At the end, the classifications in PredictionTable are used to calculate metrics suitable for the statistical evaluation of the results obtained. These metrics are entered into the ResultTable matrix. The first two columns contain respectively the class label, from 1 to 4, and the number of traces of that class used for the test. The results for a given class are found starting from column 3, divided into two rows: in the above, the number of traces can be read that contains a number of contacts greater than or equal to the number of the column + 15 - 3 (starting from 30 or 40 and slowly descending to 1 ); in the below is found the fraction of these traces classified correctly. Since there are 4 classes, rows 1 to 8 are occupied by the above information. Interestingly, the fraction of class 4 traces classified correctly (information found in row 8 of the matrix), corresponds to the probability of detection of the threat (PD). Row 9 is not used. Finally, in row 10 there is the calculation of the overall accuracy (OA, that is, the probability of correct classification, considering all the samples of the test set), while in row 11 there is the calculation of the probability of false alarm (PFA, that is, the probability that a neutral trace is classified as diver). Reading the probability values from column 3 onwards, their trend as a function of time can be deduced: column 3 corresponds to the fifteenth contact and increases by one contact each time there is a move to the right of a column. The time interval between two successive contacts is very often equal to the time interval between two successive pings. However, there are cases in which one or more pings have not given rise to the contact and therefore the time between two subsequent contacts is an integer multiple of the interval between subsequent pings.

[0532] Results Figure 19 shows the trend of the three performance evaluation metrics: the OA - overall accuracy (taken from row 10 of the ResultTable matrix), the PD - probability of detection (taken from row 8) and the PFA - probability of false alarm (taken from row 11 ), as the number of contacts in the trace increases, starting from contact number 15. As this is a multi-class classification, the OA is generally considered sufficient for performance evaluation. However, due to the particular importance that the diver class has in the case in question and in order to be able to evaluate the results of the classification in terms of simple detection, PD and PFA were also included in the figure. In order to appreciate the variability of the results linked to the random choice of the 70 neutral traces used for training, training and testing were repeated 5 times. The figure then shows, for each metric, five different curves: those for OA, those for PD and those for PFA.

[0533] The OA, evaluated on the 130 traces that make up the test set (see Table 1 ), starts from about 80% at contact number 15 and exceeds 90% at contact number 30 (i.e., after about 1 minute from the first detection of the target). After the contact 65 the OA exceeds 95% and subsequently remains above that value.

[0534] In the early stages, the PD is lower than the OA. Evaluated on the 40 threatening traces that are part of the test set, the PD is initially around 60% but exceeds 90% at contact number 35 (i.e. approximately 1 minute and 10 seconds after the first detection of the target) and exceeds 95% after contact number 70 (approximately 2 minutes and 20 seconds after the first detection).

[0535] As for the PFA, after an initial phase in which it oscillates, always remaining below 5%, it rapidly reduces and approaches zero after contact number 50.

[0536] Also in this case, the fact that the OA is better than the PD indicates that the classification system obtains better performance for the traces it knows better (the neutral ones, better shown in the training set) than those obtained for the traces it knows little about (the threatening ones, of which the training set has only three samples). The reason must be attributed to the imbalance of the training set, which the cost matrix remedies to a considerable, albeit imperfect, extent.

[0537] Despite an extremely unbalanced training set, with very minimal threatening traces, the target classification system achieves good performance (with OA and PD reaching, at different times, 95% and PFA close to zero) provided that trajectories of sufficient length can be evaluated. To allow the system to reach and settle around the aforementioned values, it takes about 2 minutes and 20 seconds from the first contact with the target.

[0538] By comparison with the results obtained using the same training set and limiting to the detection of the threat (see Figure 8, remembering that for case D2 the OA refers to only two classes, neutral trace and threatening trace, instead of the 4 types of targets considered in C1 ) three observations arise:

[0539] (1 ) the variance in performance increases from detection to classification;

[0540] (2) OA and PD of the classification are on average better than the corresponding quantities obtained in the detection, with a difference generally between 5% and 10%. Although values similar to those of the classification are also achieved in the detection, this requires slightly longer times;

[0541] (3) the classification PFA is initially higher, but decreases to nearzero values more rapidly than the detection PFA.

[0542] The increase in variance referred to in point (1 ) is attributable to the greater sensitivity of the classification to the random choice of the 70 neutral traces used for training: the variable presence of the three neutral classes in the 70 selected traces modifies the performance of the classification more than it does for the detection of the threat.

[0543] The threat detection performance obtained with the Imbalanced Classification turned out to be slightly better than those obtained by the Imbalanced Detection, based on what is highlighted in (2) and (3). This may seem illogical, considering the greater complexity of classification compared to detection. In fact, it should be noted that classification requires and exploits information richer than that used by detection. While the latter requires generic neutral traces for training (for which it is not necessary to know the specific class to which they belong), the classification requires that in the training set each neutral trace be assigned to a specific class. This greater wealth of information make it possible to classify the target and, at the same time, to obtain more rapidly accurate performance in the detection of the threat.

[0544] Finally, with regard to the sensitivity of the performance with respect to the value of the misclassification cost entered in the matrix, the same considerations as outlined in the previous section apply, in relation to the Imbalanced Detection.

[0545] 11. C2 - Balanced Classification

[0546] A multi-class SVM classifier, with a Gaussian kernel function, is trained to decide between the four possible classes of the target (three neutral and one threatening) using a training set (T3) in which there are sufficient traces of the four classes. This is a classic problem of supervised classification that is addressed by having representative and balanced data. The description of how a multi-class SVM classifier works can be found in the section entitled Overview of SVM classifiers.

[0547] Operations and software pipeline

[0548] Table 1 shows that there are 150 neutral traces available for training, 50 for each neutral class, plus 60 threatening traces. In this type of classification, all the traces available for training are used. Therefore, the training set consists of 210 traces in total.

[0549] Starting from the fifteenth contact of each trace and proceeding in steps of 30 contacts, until the end of the trace is reached, a feature vector is extracted and stored in a matrix called TabelG. The number of vectors extracted for each trace is not fixed, it depends on the number of contacts that make up the trace. The feature vector is extracted by receiving the name of the trace and the number of contacts to be considered as input, producing the CFV vector as output. Each feature vector occupies the first 25 columns of a row of the matrix; the next vector will occupy the row below it. Column number 26 of TableG is instead used to enter the label regarding the class to which the trace from which the vector has been extracted belongs: 1 for the vessel, 2 for the fish, 3 for the school of fish, 4 for the diver.

[0550] Once TableG is completed with the 210 traces considered, a multi-class classifier (called model) is trained using the Gaussian kernel (called RBF) having a scale parameter (KernelScale) equal to 5 and a regularization parameter (BoxConstraint) equal to 1. To create a multiclass classifier through multiple SVM binary classifiers, the classic one- versus-one strategy (onevsone fixed coding parameter) was chosen. In addition, feature normalization is applied. Misclassification costs are not specified and are therefore all equal to one (default choice).

[0551] Finally, the SVM model produced, referred to as trainedModel, and the matrix of feature vectors used for its training, TableG, are saved.

[0552] The test of the multi-class classifier is carried out in a similar way to that used to test the models trained for the Imbalanced Classification. That section can be referred to for all the details regarding the test phase.

[0553] Results

[0554] Figure 20 shows the trend of the three metrics for performance evaluation (i.e., OA: overall accuracy, PD: prob, detection and PFA: prob, false alarm), as the number of contacts in the trace increases, starting from contact number 15. Unlike the previous sections, since the training set available is used in its entirety, the results obtained on the test set do not show significant variations. So only one curve is sufficient for each metric labelled respectively with OA, PD and PFA in the figure.

[0555] The OA, evaluated on the 130 traces that make up the test set (see Table 1 ), starts from about 85% at contact number 15 and exceeds 90% at contact number 23. After contact 25 (i.e. , after about 50 seconds from the first target detection), the OA exceeds 95% and subsequently remains above that value.

[0556] In the early stages, the PD is lower than the OA. Evaluated on the 40 threat traces that are part of the test set, the PD is initially around 60%, but exceeds 90% at contact number 30 (that is, after about 1 minute from the first detection of the target) and exceeds 95% after contact number 35 (after about 70 seconds from the first detection), and then rises further towards unity.

[0557] The PFA is immediately close to zero and shows some transient increases straddling the contact number 80, while still remaining below 2%.

[0558] The fact that the OA is better than the PD in the early stages of time, and then overlap, indicates that the classification system needs trajectories slightly longer than those needed for neutral targets in order to correctly recognize the diver. As long as the trajectories contain less than 30 contacts, there is a greater than 10% chance that the diver will be classified as a neutral trace (no alarm).

[0559] Overall, after about one minute and ten seconds from the first target detection, the classification system achieves excellent performance (with OA and PD exceeding 95% and PFA close to zero).

[0560] Two observations emerge from the comparison with the results obtained using the classification with the unbalanced training set (C1 , Figure 19):

[0561] (1 ) in the balanced case, OA and PD rise faster and reach values close to unity, keeping them stable;

[0562] (2) in the balanced case, the PFA is lower and longer close to zero.

[0563] The optimal working conditions offered by the T3 training set are the basis of the advantages of the Balanced Classification compared to the imbalanced case. Moreover, in the balanced case it is not necessary to introduce any cost matrix to differentiate the importance of an incorrect diver classification. The excellent performance in terms of threat detection obtained through the classifier makes it essential to develop a pipeline dedicated only to detection where there is a complete training set such as T3. For this reason, only one classification system was included in the second Table corresponding to the T3 training set.

[0564] 12. Overview of SVM classifiers

[0565] This section will introduce some elements regarding SVM classifiers, not so much to fully explain their theory, but to contextualize their application to the different classification options used. The object, therefore, is to enable similar results to be obtained using SVM libraries offered by other programming languages.

[0566] The binary SVM classifier is the base case on which to build the rest. We will then start with the binary classification and then mention the changes used for Anomaly Detection and Imbalanced Detection. Subsequently, the multi-class case, used for Balanced Classification, and the necessary changes for Imbalanced Classification will be introduced.

[0567] SVM binary

[0568] For a brief description, some parts are taken from the scientific article G. Moser, P. Costamagna, A. De Giorgi, A. Greco, L. Magistri, L. Pellaco, A. Trucco (2015) "Joint Feature and Model Selection for SVM Fault Diagnosis in Solid Oxide Fuel Cell Systems" Mathematical Problems in Engineering, to be considered an integral part of this description.

[0569] Focusing first on binary classification. Let samples, associated with two classes. Letdbe the number of features (here,d= 25), (i = 1,2,... ,l ) be thed-dimensional vector collecting the d features, and yibe a binary variable (named label) that takes on the value -1 or +1 depending on the membership of theith sample to either one of the two classes. The set is the training set. An SVM classifier assigns an unknown sample the class label where the discriminant function f(-) is the following kernel expansion:

[0570] K(v) is a kernel function, and the coefficients (r = 1,2. l ) are determined by solving the following quadratic programming (QP) problem:

[0571] The biasbis derived as a by-product of this solution, 9 is the matrix whose (i,j)th entry is 1 is an < - dimensional vector with unitary components, >’ is the vector of the labels of the •- training samples, andBis a parameter. The expansion (1 ) is typically sparse, i.e., for the majority of training samples; those for which are named support vectors. Finally, the Gaussian RBF kernel is: where;7is a positive parameter.

[0572] Before the training phase, all the features of a given training set should be preliminarily normalized to ensure that each has a zero mean and unitary variance. This normalization is necessary because of the significantly different orders of magnitude of the measured residuals. It also helps preventing overflow and favours numerical stability in the solution of the QP problem for SVM training. Before the classification, the features of an unknown samplexwill be normalized by adopting the mean and standard deviation values computed during the training phase, using the training set samples. More in details, the normalized value, of the nth component ofx, named , is; where and are the sample mean and standard deviation of the nth feature, respectively.

[0573] From the above, it follows that only two parameters need to be set: the constantBand the variance In the Matlab implementation described in the previous sections, the constant B is equivalent to the BoxConstraint (always set equal to 1 ), while has the following connection to KernelScale:

[0574] KernelScale =

[0575] D1 : One-class SVM

[0576] A special case of the binary classifier, called one-class SVM, was used for the Anomaly Detection (D1 ). The training set consists only of samples from a class whose label yi is equal to, for example, +1. The lack of -1 labels makes it impossible to fulfill some of the previously written reports. A new constraint is then introduced:

[0577] ITα = (v, 0 ≤α1≤ 1, 0 < v ≤ l, i = 1,2, ...l

[0578] Compared to the classic binary SVM, it is no longer necessary to enter a specific value for the constants(BoxConstraint), always set equal to one, but it is necessary to adjust the value of the parameter v (Nu). This topic has been covered extensively in the section dedicated to Anomaly Detection.

[0579] It should be remembered that the score mentioned in this section is equivalent to the value of the function a positive value indicates that the samplexbelongs to the known class, while a negative value indicates that the samplexrepresents an anomaly. Finally, the cardinality of the training set mentioned in the section itself corresponds to D2: D2: Matrix of costs

[0580] For the Imbalanced Detection (D2) the binary classification scheme is refined by introducing a matrix the purpose of which is to define the misclassification costs. In this case, the following was used: so that classifying a threat as a neutral trace (no alarm) costs 50 times more than classifying the neutral trace as a threat (false alarm).

[0581] More generally:

[0582] We now indicate with p1the empirical probability of the class associated with label -1 and with p2that of the class associated with label +1 , both calculated on the basis of the cardinality of the samples of the two classes present in the training set: where is the number of class -1 samples, while is the number of class +1 samples, Using the misclassification costs, the a priori probabilities of the two classes are modified as follows:

[0583] These new probability values make it possible to change the constants(i.e., BoxConstraint) used in the generic binary classifier, diversifying it between the two classes. Samples of the class with label -1 will be used while for those with a +1 label, the following will be used:

[0584] The application of differentiated costs also impacts on the normalization of the features, in particular on the calculation of the mean and standard deviation values of each feature for which the samples of the training set are used. Depending on the class to which each sample belongs, a weight must be set as defined

[0585] With these weights, the mean value and standard deviation to be used for feature normalization can be calculated, bearing in mind that indicates the nth feature of the sample xiof the training set:

[0586] Multi-class SVM

[0587] As before, a paragraph from the previously mentioned scientific article is also used for the generalisation to the multi-class case.

[0588] Generalization to classes (M>2) is usually achieved by decomposing the multiclass problem into a collection of binary subproblems. The one-against-one (OAO) approach is often preferred because it is a good tradeoff between accuracy and computational burden. First, a binary discriminant function is separately determined to discriminate between the Mh and th classes Then, to label an unknown sample x , each function is applied to and a vote is cast in favor of either thehth or the fe th class depending on the sign of . Finally, is assigned to the class that received the most votes.

[0589] While the case of Balanced Classification (C2) is presented as an OAO generalization of a standard binary classifier (whose values of B and σ2are fixed as explained above), the case of Imbalanced Classification (C1 ) requires the use of a C matrix of 4x4 size to define the costs of misclassification. Again, the multi-class problem is addressed through a set of binary problems, according to the OAO strategy. For each binary problem, the steps described in the previous subsection are performed. In order to apply these steps, it is necessary first to:

[0590] (1 ) normalize the a priori probabilities (calculated for all 4 classes based on the cardinality of the samples in the training set) for the two selected classes, so that their sum adds to one;

[0591] (2) create a cost matrix of 2x2 size, relative to the two selected classes, appropriately selecting the elements involved in matrix C, having 4x4 size.

[0592] APPENDIX A

[0593] First, the line through the filtered coordinates of the weighted centroid is calculated, relative to the last two contacts with the target. We indicate with (x1 , y1 ) the coordinates of the last contact and (x2, y2) those of the penultimate contact and assume that x1 x2. The line passes through the two aforementioned points if:

[0594] The distance dO of the line from a generic point (xp, yp) can be calculated as follows:

[0595] The distance we are interested in is that of the line from the origin of the coordinates, where the sonar is positioned. Based on the above, the following can be calculated: BIBLIOGRAPHIC REFERENCES

[0596] Modeling of schools of fish

[0597] [Cal14] Calovi, D. S., Lopez, U., Ngo, S., Sire, C., Chafe, H., & Theraulaz, G. (2014). Swarming, schooling, milling: phase diagram of a data-driven fish school model. New journal of Physics, 16(1 ), 015026.

[0598] [Cou02] Couzin, I. D., Krause, J., James, R., Ruxton, G. D., & Franks, N. R. (2002). Collective memory and spatial sorting in animal groups. Journal of theoretical biology, 218(1), 1-11.

[0599] [Lop12] Lopez, U., Gautrais, J., Couzin, I. D., & Theraulaz, G. (2012). From behavioural analyses to models of collective motion in fish schools. Interface focus, 2(6), 693-707.

[0600] [Mil12] Miller, N., & Gerlai, R. (2012). From schooling to shoaling: patterns of collective motion in zebrafish (Danio rerio). PloS one, 7(11 ), e48865.

[0601] [Rom96] Romey, W. L. (1996). Individual differences make a difference in the trajectories of simulated schools of fish. Ecological Modelling, 92(1), 65-77.

[0602] [Tun13] Tunstrom, K., Katz, Y., loannou, C. C., Huepe, C., Lutz, M. J., & Couzin, I. D. (2013). Collective states, multistability and transitional behavior in schooling fish. PLoS computational biology, 9(2), e1002915.

[0603] [Vis04] Viscido, S. V., Parrish, J. K., & Grunbaum, D. (2004). Individual behavior and emergent properties of fish schools: a comparison of observation and theory. Marine Ecology Progress Series, 273, 239- 249.

[0604] [Vis05] Viscido, S. V., Parrish, J. K., & Grunbaum, D. (2005). The effect of population size and number of influential neighbors on the emergent properties of fish schools. Ecological modelling, 183(2-3), 347-363. Underwater acoustics and modelling sonar systems

[0605] [Ain10] M.A. Ainslie (2010) Principles of Sonar Performance Modeling. Springer Praxis.

[0606] [Lur10] X. Lurton (2010) An Introduction to Underwater Acoustics. Principles and Applications. (Second Edition). Springer Praxis.

[0607] [Uri83] R.J. Urick (1983) Principles of underwater sound. 3rd edition. McGraw-Hill.

[0608] Analysis of animal movement

[0609] [Alm10] Almeida, P. J., Vieira, M. V., Kajin, M., Forero-Medina, G., & Cerqueira, R. (2010). Indices of movement behaviour: conceptual background, effects of scale and location errors. Zoologia (Curitiba), 27(5), 674-680.

[0610] [Ben04] S. Benhamou (2004) “How to reliably estimate the tortuosity of an animal's path: straightness, sinuosity, or fractal dimension?” Journal of theoretical biology, 229(2), 209-220.

[0611] [Col20] Colefax, A. P., Kelaher, B. P., Pagendam, D. E., & Butcher, P. A. (2020). Assessing white shark (Carcharodon carcharias) behavior along coastal beaches for conservation-focused shark mitigation. Frontiers in Marine Science, 7, 268.

[0612] Classification of trajectories and echoes, especially in the marine environment

[0613] [Alv17] Alvarez, M. D. L., Hastie, H., & Lane, D. (2017, September). Navigation-based learning for survey trajectory classification in autonomous underwater vehicles. In 2017 IEEE 27th International Workshop on Machine Learning for Signal Processing (MLSP) (pp. 1-6).

[0614] [Aus12] Auslander, B., Gupta, K. M., & Aha, D. W. (2012, May). Maritime Threat Detection Using Probabilistic Graphical Models. In Twenty-Fifth International FLAIRS Conference (6 pages).

[0615] [Bey13] Beyan, C., & Fisher, R. B. (2013, September). Detection of Abnormal Fish Trajectories Using a Clustering Based Hierarchical Classifier. In BMVC - British Machine Vision Conference (11 pages).

[0616] [Bey14] Beyan, C. (2014). Detection of unusual fish trajectories from underwater videos. Ph.D. Thesis, Univer. of Edinburgh.

[0617] [Bus18] Buβ >, M., Steiniger, Y., Benen, S., Kraus, D., Kummert, A., & Stiller, D. (2018, October). Hand-crafted feature based classification against convolutional neural networks for false alarm reduction on active diver detection sonar data. In OCEANS 2018 MTS / IEEE Charleston (pp. 1-7).

[0618] [Das16] Da Silva, T. L. C., Zeitouni, K., & de Macedo, J. A. (2016, June). Online clustering of trajectory data stream. In 2016 17th IEEE International Conference on Mobile Data Management (MDM) (Vol. 1 , pp. 112-121 ).

[0619] [Dem 13] DeMarco, K. J., West, M. E., & Howard, A. M. (2013, October). Sonar-based detection and tracking of a diver for underwater human-robot interaction scenarios. In 2013 IEEE International Conference on Systems, Man, and Cybernetics (pp. 2378-2383).

[0620] [Eln07] Elnekave, S., Last, M., & Maimon, O. (2007, April). Incremental clustering of mobile objects. In 2007 IEEE 23rd international conference on data engineering workshop (pp. 585-592).

[0621] [Fis18] Fischell, E. M., Viquez, O., & Schmidt, H. (2018, October). Passive acoustic tracking for behavior mode classification between surface and underwater vehicles. In 2018 IEEE / RSJ International Conference on Intelligent Robots and Systems (IROS) (pp. 2383- 2388).

[0622] [Kor18] Koreitem, K., Li, J., Karp, I., Manderson, T., Shkurti, F., & Dudek, G. (2018, October). Synthetically trained 3d visual tracker of underwater vehicles. In OCEANS 2018 MTS / IEEE Charleston (pp. 1-7).

[0623] [Mos15] G. Moser, P. Costamagna, A. De Giorgi, A. Greco, L. Magistri, L. Pellaco, A. Trucco (2015) “Joint Feature and Model Selection for SVM Fault Diagnosis in Solid Oxide Fuel Cell Systems” Mathematical Problems in Engineering, article ID 282547, 12 pages. [Pal12] Palazzo, S., Spampinato, C., & Beyan, C. (2012, November). Event detection in underwater domain by exploiting fish trajectory clustering. In Proceedings of the 1st ACM international workshop on Multimedia analysis for ecological data (pp. 31-36).

[0624] [Pan17] Pan, X., Wang, H., He, Y., Xiong, W., & Jian, T. (2017). Online classification of frequent behaviours based on multidimensional trajectories. IET Radar, Sonar & Navigation, 11 (7), 1147-1154.

[0625] [Spa14] Spampinato, C., Palazzo, S., Boom, B., van Ossenbruggen, J., Kavasidis, I., Di Salvo, R., ... & Fisher, R. B. (2014). Understanding fish behavior during typhoon events in real-life underwater environments. Multimedia Tools and Applications, 70(1 ), 199-236.

[0626] [Try09] Trygonis, V., Georgakarakos, S., & Simmonds, E. J. (2009). An operational system for automatic school identification on multibeam sonar echoes. ICES journal of Marine Science, 66(5), 935-949.

[0627] [Wan18] Wang, Y., & Ho, I. W. H. (2018, June). Joint deep neural network modelling and statistical analysis on characterizing driving behaviors. In 2018 IEEE Intelligent Vehicles Symposium (IV) (pp. 1- 6).

[0628] [Zha19] Zhang, J., Liu, M., & Fan, Z. (2019, September). Classify motion model via SVM to track underwater maneuvering target. In 2019 IEEE International Conference on Signal Processing, Communications and Computing (ICSPCC) (pp. 1-6).

Claims

CLAIMS1. Antenna module for an acoustic point defence system (SAD), which module comprises at least one array (201 ) of electroacoustic transmitting transducers (TX) and at least one array (101 ) of electroacoustic receiving transducers (RX), characterized in that said arrays of transmitting transducers (201 ) and said arrays of receiving transducers (101 ) are housed in a watertight container (1 ) adapted to be submerged in water when the module is in operation, for example by means of a hoist or winch device (2), said container (1 ) having watertight accesses, for example via watertight connectors, for at least one cable for a power supply signal (5), connected or connectable to a power supply unit (3) external to the container, and for at least one cable for a data signal (6), connected or connectable to a remote control unit(4) adapted to send commands and receive target detection states and / or signals, wherein the module comprises a local control and calculation unit (301 ) housed inside the container (1 ), which local control and calculation unit (301 ) is provided with a power supply signal input(5) and a data signal port (6) and is interfaced with the arrays of transducers (101 , 201 ) for controlling the signal transmitted by the arrays of transmitting transducers (201 ) and processing the signal received by the arrays of receiving transducers (101) on the basis of commands received on the data port.

2. Module according to Claim 1 , wherein the local control and calculation unit (301 ) comprises a processor (311) configured to read commands from the data port and send processing states and / or results to said data port so as to be able to control the arrays of transmitting transducers (201 ) on the basis of the received commands and send information on the targets as detected.

3. Module according to Claim 1 or 2, wherein the arrays of transmitting transducers (201 ) comprise angularly offset transducer staves, the module comprising a transmission signal generation unit (401 ) and a switching unit (501 ) driven by the local control and processing unit (301 ) so that a specific transmission signal generated bythe generation unit can be directed to a specific transducer stave and thereby excite said specific transducer stave, the local control and processing unit (301 ) being configured or configurable to activate the transducer staves in sequence so as to generate a scan of acoustic beams oriented in different directions.

4. Module according to Claim 3, wherein the transmission signal generation unit comprises one or more amplifier driving circuits (401 ), preferably with differential output, for converting a waveform output by the local control and processing unit (301 ) into a driving signal of a transmission transducer stave (201).

5. Module according to Claim 4, wherein there are two driving circuits (401 ) generating a pair of driving signals of a pair of transmitting transducer staves.

6. Module according to one or more of the preceding claims, wherein the container (1 ) has a substantially cylindrical shape formed by at least a first (12) and at least a second (14) separate hollow cylindrical element, stacked on each other longitudinally by means of a connecting element (13) and closed at the ends, respectively, by a bottom (11 ) and by a closing cover (15), with the transmitting transducers (201 ) arranged in longitudinally arranged staves angularly offset on the surface of the first cylindrical element (12) and the receiving transducers (101 ) arranged in longitudinally arranged staves angularly offset on the surface of the second cylindrical element (14).

7. Module according to Claim 6, wherein the connecting element (13) is substantially in the form of a disc provided with an opening for the passage of cables between the two cylindrical elements (12, 14), which connecting element acts as a support for a box-shaped element, for example with a cuboid shape, adapted to house the switching unit (501 ).

8. Module according to Claim 6 or 7, wherein the bottom (11 ) is adapted to house the driving circuits (401 , 801 ) of the transmitting transducers (201 ) while the cover (15), in addition to being a closing element, also acts as a support for a box-shaped element (301), forexample of prismatic shape, adapted to house the electronics of the local control and calculation unit (301 ).

9. Module according to one or more of the preceding claims, wherein the transmitting transducers (201 ) are arranged in n groups of two or more staves arranged in succession along a cylindrical surface so that the angular distance between a stave of one group and the corresponding stave of the immediately following or preceding group is 3607n.

10. Module according to Claim 9, wherein the groups of transmitting staves (201 ) are four in number, each group comprising a first (A1 , B1 , C1 , D1 ) and a second stave (A2, B2, C2, D2) angularly offset by 45° and differently inclined, for example by 2.5°, with respect to the longitudinal axis of the container (1).

11. Module according to Claim 10, wherein the local control and calculation unit (301 ) is configured or configurable to drive the first (A1 , B1 , C1 , D1) or the second stave (A2, B2, C2, D2) of all the groups of staves with non-overlapping close pulses so as to cover with four pulses a 360° scan on a plane transverse to the axis of the container (1 ) or to alternatively drive the first (A1 , C1 ) or the second stave (A2, C2) of the groups of odd staves and then the first (B1 , D1 ) or the second stave (B2, D2) of the groups of even staves, or vice versa, so as to cover with two pulses a 360° scan on a plane transverse to the axis of the container (1 ).

12. Module according to one or more of the preceding claims, wherein the receiving transducers (101 ) are arranged in m staves, for example 64 staves, of transducers arranged longitudinally on a cylindrical surface, one after the other, angularly evenly spaced, until covering an angular extension of 360°, each stave of transducers being in electrical connection with a corresponding acquisition channel input to the local control and processing unit (301 ) through an amplifier (901 ).

13. Module according to one or more of the preceding claims, wherein the local control and processing unit (301 ) comprises A / D converters (361 ) for the digital conversion of the signals coming from thereceiving translators (101 ) and a beamformer unit (381 ) for receiving acoustic beamforming for the detection of the echoes received from the receiving transducers (101 ).

14. Module according to one or more of the preceding claims, comprising one or more sensors, such as, for example, a compass (601"), a pressure metre (601'), an inclinometer (601' ') and the like, housed in the container and connected with the local control and processing unit for sending status information for the module through the data port, said sensors comprising a flood detection sensor (601 ) adapted to signal the loss of impermeability of the container (1 ), said flood detection sensor being connected, alternatively or in addition, with a watertight connector for direct reading through a remote surface detection device (303) adapted to interrupt the power supply when a flooding of the container is detected.

15. Module according to Claim 14, characterized in that it is provided in combination with an external power supply unit (3) equipped with an emergency switch device (403) interfaced with a detection unit (303) adapted to receive as input the signal coming from the flood detection sensor (601 ) of the module and to control said switch device (403) so as to disable the power supply to the antenna module when a situation of flooding of the container (1 ) of the antenna module is detected.

16. Acoustic point defence system (SAD) comprising a remote control unit (4) interfaced to a communication unit (8), such as a router or a switch of an Ethernet network, a power supply unit (3), for example with rechargeable batteries, a hoist or winch device (2) and an antenna module (1 ) according to one or more of the preceding claims, characterized in that the input for the power supply signal of said antenna module is connected to the power supply unit (3) through a power supply cable (5) while the data port of said module is in communication with the remote control unit (4) through a data cable (6), directly or through a subunit (7) in wired or wireless communication with the remote control unit (4), the hoist or winch device (2) being used forthe launching, recovery and support of said antenna module during operation.

17. System according to Claim 16, comprising a plurality of antenna modules (1 ) according to one or more of the preceding Claims 1 to 15 and one or more power supply units (3) connected to said modules, each module being in communication with the remote control unit (4), which remote control unit is configured for controlling each module (1 ) and managing the information coming from each module so as to obtain a modular extension of the target detection area.

18. System according to Claim 16 or 17, wherein the remote control unit (4) comprises a processor unit configured to process the data from the antenna module(s) for tracking and / or classifying the targets detected by said antenna modules and outputting the results of said processing.

19. System according to Claim 18, characterized in that said processor unit is configured for: identifying the contacts that form the trace of a target by comparing the intensity of the echoes received and processed with one or more thresholds; associating each contact of the trace with a set of morphometric and / or energetic characteristics; processing a feature vector for each trace based on the set of characteristics of each contact that forms the trace. associating each feature vector with a binary parameter that identifies the presence or absence of a threat, the association of the binary parameters being carried out by performing a machine learning algorithm configured by performing a training phase on a training database based on known parameter values for detected or simulated target traces.

20. System according to Claim 19, wherein the processor unit is configured to associate to each feature vector, in addition or alternatively to the binary parameter, an identifier that identifies the typeof target, in particular identifies the type of target as belonging to one of the following classes: school of fish, single fish, passing vessel, diver.

21. System according to Claim 19 or 20, wherein the set of features associated with each contact of a trace comprises one or more elements selected from the group consisting of:(C1 ) Time index at which the ping that gave rise to the contact in question was transmitted, defined as the number of time intervals at which the ping was transmitted;(C2) Range coordinate of the centroid of the connected region expressed in pixels of the horizontal axis of the binary map;(C3) Angle coordinate of the centroid of the connected region expressed in pixels of the vertical axis of the binary map;(C4) Area: number of samples of the angle-range plane, i.e. number of pixels of the binary map that make up the connected region;(C5) Eccentricity: eccentricity of the ellipse that has the same second order moments of the region, calculated as the ratio between the distance separating the two foci of the ellipse and the length of the major axis of the ellipse;(C6) Extent: ratio between the number of samples of the anglerange plane, that is, the number of pixels of the binary map that make up the connected region and that of the samples contained in the smallest rectangle that contains the region, called bounding box;(C7) Orientation: angle between the axis of the range, that is, the horizontal axis of the binary map and the major axis of the ellipse that has the same second order moments as the region;(C8) Maxintensity: maximum value of the intensity of the samples of the map of the intensities that make up the region, converted to a logarithmic scale;(C9) Minlntensity: minimum value of the intensity of the samples of the intensity map that make up the region, converted to a logarithmic scale.(C10) Meanintensity: mean value of the intensity of the samples of the map of the intensities that make up the region, converted to a logarithmic scale;(C11 ) Range coordinate of the weighted centroid of the connected region, the centroid being calculated using the intensity map, taking into account the different intensities of the samples that make up the connected region;(C12) Angle coordinate of the weighted centroid of the connected region, the centroid being calculated using the intensity map, taking into account the different intensities of the samples that make up the connected region, wherein a connected region is a region in which, for each sample of the region itself with echo intensity received above a certain threshold, at least one of the eight pixels surrounding it also has an intensity above the threshold.

22. System according to one or more of the preceding Claims 19 to 21 , wherein the vector of features associated with each trace comprises one or more elements selected from the group consisting of:(F1 )-(F2) Mean and standard deviation of the speed in instantaneous range, that is, of the speed along the range axis for each pair of subsequent contacts calculated by exploiting the coordinates of the centroid weighted on the angle-range plane;(F3)-(F4) Mean and standard deviation of the instantaneous angle speed, i.e. the speed along the angle axis for each pair of successive contacts calculated by exploiting the coordinates of the weighted centroid in the angle-range plane;(F5)-(F6) Mean and standard deviation of the time series obtained by attributing a score from a minimum value to a maximum value depending on whether a contact in its movement is directed towards a target or away from said target and, in this case, how far it is from said target in the same way as a target or target shot;(F7)-(F8) Mean and standard deviation of the Area of the contact defined by the time series of values of the C4 characteristic of the contact;(F9)-(F10) Mean and standard deviation of Eccentricity of the contact defined by the time series of values of the C5 characteristic of the contact;(F11 )-(F12) Mean and standard deviation of the Extent of the contact defined by the time series of the values of the C6 characteristic of the contact;(F13)-(F14) Mean and standard deviation of Orientation of the contact defined by the time series of contact characteristic C7 values;(F15)-(F16) Mean and standard deviation of the TSstim of the contact defined by the time series of the values of the C10 characteristic (Meanintensity) of the contact, corrected by an empirical constant to approach the expected target strength (TS);(F17) Mean of TSmin of the contact defined by the time series of the values of the characteristic C9 (Minlntensity) of the contact, corrected by an empirical constant to approach the expected TS;(F18) Mean of the TSmax of the contact defined by the time series of the values of the C8 characteristic (Maxintensity) of the contact, corrected by an empirical constant to approach the expected TS;(F19) Mean of the range separation between the weighted centroid and centroid of the contact on the time series obtained by calculating the difference between the values of characteristic C11 and those of characteristic C2 of the contact;(F20) Mean of the angle separation between the weighted centroid and the centroid of the contact on the time series obtained by calculating the absolute value of the difference between the characteristic C12 and the characteristic C3 of the contact;(F21 ) Straightness index defined as the ratio between the length of the straight segment that joins the initial point to the end point of the trajectory achieved by the target to the point in question and thedistance travelled following, point by point, the trajectory itself, using the filtered coordinates of the weighted centroid.(F22) Sinuosity index as a function of the distance traveled between two successive contacts, the cosine of the angle identified by the trajectory when considering a triplet of successive contacts and the sine of the same angle;(F23) Net speed in range, obtained by dividing the distance in range between the end point and the initial point of the considered trajectory by the time taken to travel the trajectory itself;(F24) Net angular speed obtained by dividing the angular distance between the end point and the initial point of the trajectory considered by the time taken to travel the trajectory itself;(F25) Mean Squared Displacement Over Time defined by taking the square root of the sum of the variance of the x-coordinate of the weighted centroid along the trajectory to the variance of the y-coordinate divided by the time it took the target to travel the trajectory, up to the point in question.

23. System according to one or more of the preceding Claims 19 to 22, wherein the training database (T1 ) comprises traces of only neutral targets equally divided into classes: school of fish, single fish, passing vessel, the machine learning algorithm being a one-class SVM classifier with Gaussian kernel function that performs the anomaly detection operation, wherein the anomaly to be detected represents the threat or the trace of a neutral class not shown in the training set.

24. System according to one or more of the preceding Claims 19 to 23, wherein the training database (T2) comprises a number of traces of neutral targets greater than the number of traces of threat targets, the neutral targets being represented by a school of fish, a single fish, a passing vessel, while the threat targets are represented by divers, the machine learning algorithm being: an SVM binary classifier with Gaussian kernel function that performs the threat detection operation, the imbalance between the neutral and threatening traces that make up the training set beingmanaged by attributing non-uniform misclassification costs, thus weighting the missing alarms more heavily; or a multi-class SVM classifier with Gaussian kernel function that performs the target classification operation in one of the four classes: school of fish, single fish, passing vessel, diver, the imbalance between the neutral and threatening classes that make up the training set being managed by attributing non-uniform misclassification costs, thus weighting the missing alarms more heavily.

25. System according to one or more of the preceding Claims 19 to 24, wherein the training database (T3) comprises a number of target traces equally distributed in the four classes: school of fish, single fish, passing vessel, diver, the machine learning algorithm being a multiclass SVM classifier with Gaussian kernel function that performs a supervised classification operation.

26. System according to one or more of the preceding Claims 19 to 25, wherein the training database is constructed by simulating the movements of a target of the type school of fish, single fish, passing vessel, diver, wherein: for the school of fish, the echo received by the sonar is calculated for each ping transmitted by consistently summing the echoes of all the fish that make up the school, calculated based on the position of each and their target strength, with each fish in the school being modelled as a punctiform diffuser with a given target strength, assuming that all the fish in the school are characterised by the same TS target strength value calculated as a function of their length using the equation:TS = 19.1 log L + 0.9 log fk - 24.9 [dB] where L is the fish length in metres and fk is the sonar frequency in kHz; for the individual fish, the echo received from the sonar is calculated for each ping transmitted by consistently summing the echoes of all the punctiform diffusers that make up the body of the fish, based on the position of each of the fish, the amplitude of these echoes being regulated by the target strength of the diffusers, linked to theoverall target strength of the fish TS calculated as a function of the length using the equation:TS = 19.1 log L + 0.9 log fk - 24.9 [dB] where L is the fish length in metres and fk is the sonar frequency in kHz; for the vessel, the echo received by the sonar is calculated for each ping transmitted by consistently summing the echoes of all the punctiform diffusers that make up the vessel, based on the position of each of them, the amplitude of these echoes being regulated by the overall target strength of the vessel seen at its transverse TSr calculated by the equation:TSr=10 log (unitl-9) [dB]Where unitl is the length of the straight segment that shapes the submerged body of the vessel; for the diver, the echo received from the sonar is calculated for each ping transmitted by consistently summing the echoes of all the punctiform diffusers that make up the diver body, based on the position of each of them, the amplitude of these echoes being adjusted by the target strength of the diffusers linked to the overall target strength of the diver TS set at -15 dB in the case of a diver with a vehicle, or randomly chosen in the range [-25, -20] dB in the case of diver swimming.

Citation Information

Patent Citations

  • Networkable sonar systems and methods

    US20170285134A1

  • Method and device for helicopter-borne mine countermeasures

    US6069842A

Cited By

  • Fish movement visual simulation method, device and equipment

    CN120805735A

  • A method, apparatus and device for visualizing fish movement simulation

    CN120805735B

  • Zebra optimization-based sparse array underground target size non-contact measurement method

    CN121346711A

  • Intelligent decision-making method for cross-sea-air transmission parameters based on reinforcement learning and related equipment

    CN121887340A

  • A method, device and medium for determining routing of an underwater acoustic sensor network

    CN122437808A