Overview of Smart Aquaculture System: Focusing on Applications of Machine Learning and Computer Vision

Smart aquaculture is nowadays one of the sustainable development trends for the aquaculture industry in intelligence and automation. Modern intelligent technologies have brought huge benefits to many fields including aquaculture to reduce labor, enhance aquaculture production, and be friendly to the environment. Machine learning is a subdivision of artificial intelligence (AI) by using trained algorithm models to recognize and learn traits from the data it watches. To date, there are several studies about applications of machine learning for smart aquaculture including measuring size, weight, grading, disease detection, and species classification. This review provides and overview of the development of smart aquaculture and intelligent technology. We summarized and collected 100 articles about machine learning in smart aquaculture from nearly 10 years about the methodology, results as well as the recent technology that should be used for development of smart aquaculture. We hope that this review will give readers interested in this field useful information.


Introduction
Global aquaculture production has been increasing continuously, reaching more than three times the total live weight [1] with the main species groups including catfish, seaweeds, carps, bivalves and tilapia accounting for 75% of aquaculture production. In addition, marine species such as fish and crustaceans have also grown rapidly during this time [1]. The diversity of species in aquaculture is increasing, and an estimated 40% of the different species belong to fish, shellfish, algae more fish, shellfish, and algae which are cultivated in a various of water environment such as marine water, brackish water and fresh water globally [2]. Traditional aquaculture brings poses many issues for the environment, and has limited production as well as many labor requirements. Therefore, smart aquaculture is a concept aiming to develop aquaculture industry in a sustainable way, enhance production and friendly to the environment.
According to traditional aquaculture, during operation technical steps from water preparation, seed selection, feeding, and care during the rearing process are carried out. Through aquaculture activities, there are many difficulties such as the process of water quality management in the aquaculture system, and usually people will take water samples twice a day in the morning and afternoon. This process takes much time and it is also impossible to treat the water on time in some cases of sudden changes of water quality in ponds/tanks. In another example, such as fish raised in ponds, people cannot detect diseased fish at an early stage, only when they die or come to the surface, and then treat them. In another example regarding the amount of leftover food in the pond, people cannot accurately estimate the amount of food left in the pond, the leftover food affects the water quality. When counting fish before selling, for example seed, people have to count each fish, which takes time and effort etc. All of the above difficulties affect profits in aquaculture. Therefore, smart aquaculture aims to apply smart producuton modes which solves problems in traditional aquaculture.
For a smart aquaculture approach, several smart devices are integrated into an environment specially structured to monitor cultured environmental parameters in real time and then make decisions through the collected data in automatically [3]. Smart aquaculture is a smart production mode. It can be controlled in a distance and automation by applying of IoT, big data, artificial intelligence, 5G, cloud computing, and robotics. On the other hand, smart aquaculture can be controlled by robot which can manage facilities, equipment, machineries to operate whole systems to achieve successful production [4].
There are several aspects related to smart aquaculture including collecting information through variety of temperature, dissolved oxygen, humidity, light, pH sensors for management of the water quality parameters in aquaculture system; transmitting the collected data by communication nodes to the control center; analyzing data and decision-making stored in cloud platforms; feedback of decision to each execution equipment, and the intelligence to operate a system automatically in order to develop aquaculture in a sustainable and efficient way, friendly to the environment [4].
For instance, deploying AI (artificial intelligence) and IoT (Internet of Things) in aquaculture has been increasing to solve the problems which exist in traditional aquaculture [5]. They are applied in various culture system such as cages, pond, hatchery, and breeding, with several goals like water quality monitoring [6][7][8][9]; observation of condition inside cages, pond as well as hatchery; optimizing the amount of feed to supply for cultured species and suitable time for feeding; decreasing the frequency of feed supply to cultured systems; reducing labor by the automation the culture systems [10,11].
Chrispin et al. [12] briefly reported the application of AI in aquaculture such as AI feeding devices, AI drones in aquaculture, prevention of diseases, fish seed screening, routine checkup of stock; AI in shrimp farming; AI smartphone application; AI in fish processing; AI in open sea fisheries; block chain technology in shrimp supply chain; and AI in conservation of endangered fishes. The general concept of smart aquaculture is presented in Figure 1 [12]. The figure shows the deployment of smart devices in aquaculture and all data as well as the management of the whole aquaculture process that are sent through smart phones [5,12]. Machine learning has the main function in solving problems which exist based on the algorithms and learning data to create mathematical models that ameliorate the performance of system in computer [13]. There are several models which have been deployed in aquaculture recently including decision tree (DT) [14], naive Bayes (NB) [15], support vector machine (SVM) [16], artificial neural network (ANN) [17], K-nearest neighbor (KNN) [18], deep learning (DL) [19], and ensemble learning (EL) [20].
The goal of this review is to survey the status of machine learning applications for smart aquaculture. The strategy of this review is the following: (1) overview of smart aquaculture; (2) machine learning and (3) applications of machine learning in smart aquaculture. Figure 2 shows overview of smart aquaculture sensors and monitoring systems.

Smart Aquaculture
Based on the advanced of artificial intelligent, smart aquaculture can perfect all stages from breeding, nursery to grow out stages of cultured species, as well as other processing like preparation of cultured water resource, manage the water quality, feed preparation, feeding, classification, grading, counting and washing the cultured systems. The final goal for developing the smart aquaculture is to obtain high aquaculture production to match world demand as well as protect environment.

Water Quality Monitoring in Smart Aquaculture
Water quality is the main factor which contributes to success and efficient management in aquaculture. There are several water quality parameters which play a vital role in direct or indirect on the survival and growth of cultured species that have been considered such as temperature, turbidity, carbon dioxide, pH, alkalinity, ammonia, nitrite, and nitrate, etc. Among them, temperature, dissolved oxygen and pH are most robust [63]. During the last few years, IoT has had various applications in different fields including aquaculture. Using IoT in aquaculture has opened a new trend to develop this field in a sustainable way with intelligent devices in real time using connected water monitoring capabilities that help to improve aquaculture famer's working conditions [63].
There are 4 main layers of an IoT Aquaculture System: Physical Layer, Monitoring Layer, Virtual Layer, and Connection protocol, presented in Figure 2. The smart farm industry/intelligent aquaculture has become the inevitable trend in order to decrease labor costs, to increase operational efficiency, and to lead to higher productivity. The future IoT-based systems could also aim to detect fish diseases and prevent production loss. It is worth noting that although there are several achievements in the application of artificial intelligent devices for aquaculture to build up intelligent, and high-precision fish farming is progressing quickly, there are still many challenges to operate fully automated systems.
Because aquaculture activities and its products are different from others, labor management is high in risk, as there is still a need for a certain amount of observation, information analyzation, and decision making during the fish farming process. However, a lot of intelligent equipment, such as the technologies mentioned above, are responsible for monitoring fish farming environments: robotic devices for production; data and information sorting; and energy-saving processing equipment will continue to greatly automate different stages of fish farming operations [64]. These can be implemented in aquaculture for fish identification, mass estimation, and behavior management. In addition, it is necessary to create new sensors which integrate several functions in a sensor/multifunctional sensor with high reliability, have the wide range applications, and long-life cycle [65]. Figure 3 shows an IoT aquaculture system [64,65].
To date, there have been several studies about intelligent information such as AI and IoT deployed in aquaculture in different areas such as ponds, hatcheries, cages. Chavan et al. [66] used Raspberry Pi, which is utilized for checking real-time monitoring systems in aquaculture with temperature sensor, dissolved oxygen sensor, pH sensor, ammonia sensor. The collected data are stored in a cloud computing system and then transferred to the aqua farmer mobile. In a smart fish farm, Kim et al. [67] setup a recirculating aquaculture system (RAS) with water quality monitoring sensors, MQTT protocol and a MICOM controller. Al-Hussaini et al. [68] also focuses on automatic data acquisition and monitoring systems for RAS using fog computing technology and low-cost systems with Raspberry Pi, to overcome the existing problems. The data collecting system for RAS (RaspDAQ) is developed by connecting Raspberry Pi 3 to a temperature sensor (LM35DT), using ADC MCP3002, a water level sensor (HC-SR04), and Rpi camera module. Shin et al. [69] proposed a smart fish farm that consists of two tanks: a balancing tank and a recirculating aquaculture system (RAS). Experiments were conducted in the laboratory of the Future Convergence Technology Research Institute at the Busan University of Foreign Studies and at the eel culture farm of Jangsucheon Ltd., located on Gangwhado Island.
In this system, the effluence of water is controlled by a controller-the proportional integral derivative (PID) controller which is connected with a sensor with water-level controlling function, water temperature sensors, dissolved oxygen (DO) sensors, and potential hydrogen (pH) sensors. Remote control and the real-time monitoring are performed by using the Message Queue Telemetry Transport (MQTT) protocol, with the measured big data stored in lab servers. Monirul et al. [70] proposed a real-time, smart-based water monitoring system using IoT devices. The system was built using several devices, such as sensors (temperature, dissolved oxygen, turbidity, pH, Water Level, and CO 3 gas), Arduino, and an IoT platform. For deploying IoT system in ponds, Nocheski et al. [71] presented an upgrade on a functional Internet of Things (IoT) system to automatically monitor the water quality in cultured systems. The IoT system includes some sensors that can measure several important water quality meters in cultured systems (tank, pond, cage, . . . ), like temperature, light intensity, and water level. It also consists of a small computer board whereby the collected data from those sensors and analyzed data as a final result can be sent as a sound/notification to the users. Krishna et al. [72] also set up an IoT system in fish pond to manage fish health as well as the water quality monitoring with an Arduino Uno board, Atmega328 micro controller, Wi-Fi module, Buzzer, LCD (liquid crystal display), and MIT application, providing data that are retrieved from the cloud by the farmer, along with the environmental parameters.
Prabhu [73] proposed an IoT system with the main goal is to manage the water quality parameters in the cultured system (a lake or a pond) by using sensors such as a temperature sensor, pH sensor as well as turbidity sensor. Users can obtain and analyze data as a message (SMS) through their mobile phone with their own language and can give several actions in managing the environmental conditions with an Arduino Nano Board and ESP8266 wi-fi module. Nguyen et al. [74] deployed a monitoring water quality system using IoTs in particularly fish ponds as well as other aquaculture systems, especially to create a model for forecasting quality indicators.
In this system, the author installed several sensors to manage some water quality parameters such as temperature, salinity, pH, DO, and COD indicators in the fish pond. The software is a cloud database provided by the digital ocean, which can be seen in mobile devices or on a PC/laptop. Forecasting techniques use an average, stochastic, gradient descent model. The results on two data sets show that this is a successful system which can be applied in real. Hsu et al. [75] collected water quality parameter's data through sensors such as oxidation-reduction potential (ORP), pH and temperature. They also employed a monitoring data map in real-time in order to find out the pond conditions. The IoT-based system includes Raspberry PI, Arduino UNO, Bluetooth module, two or more sensor modules (ORP, temperature, pH meter), GCM (Google Cloud Messaging), mobile App device's REGID, prediction analysis, and Web Page Management Mode (HTML combined with PHP).
Darmalim et al. [76] proposed an IoT system to automatically monitor these environmental parameters. The water quality parameters are collected in real time from the cultured system and collected data are directly update on web and the user can get information from the IoT device. It is developed using a Python framework. To get data which can presented the environmental conditions, by accessing the web application, the users can directly know what happened in the pond and take the right action on time. The electrical components are NodeMcuESP8266, ADC Ads1115, a logic converter, a dissolved oxygen and temperature sensor, a pH sensor, a turbidity sensor, a TDS sensor, a DC-DC converter, and a power supply and web application is used for a Python web development framework, and this is connected to a MySQL database. Darus et al. [77] proposed water quality monitoring from a catfish pond that has been analyzed using simple expectation maximization (EM) clustering.
Parameters, such as total dissolved solids (TDS), water level, turbidity, pH, and temperature, have been collected via sensors connected to a Raspberry Pi 3 Model B. The experiment consists of the following activities: installation of WEKA API in Raspberry Pi3 Model B (Stretch), installation of total dissolved solids, water level, turbidity, pH, and temperature sensors to the Raspberry Pi3 Model B, as well as using a simple expectation maximization clustering technique, as in the equation. Figure 4 shows IoT monitoring water quality system block diagram [76,77].

Feeding Controlling
One of the main problems in aquaculture is feeding. According to the traditional method, farmers will spread food all over the pond, or at a certain location in the pond, depending on the eating characteristics of cultured species. Therefore, it is necessary to apply IoT in the feeding system to control the feeding amount as well as feed automatically which brings many benefits such as saving manpower and controlling the amount of leftovers, reducing water quality pollution in aquaculture. There are some studies which have been conducted.
For instance, Malathi et al. [78] provides an efficient semi-automatic system that facilitates the healthy growth of aquatic organisms in aquaculture. This study is conducted not only for a feeding system but also for water quality parameters in a cultured system through sensors such as a pH sensor and temperature sensor. The GSM module is used to alert the cultivator whenever the quality parameters violate the normal range. The feeding system automatically feeds the fish based upon its requirements. The system mainly consists of an Arduino Uno, a DS18B20 Temperature Sensor, a pH sensor, and a SIM900A-GSM module. Daud et al. [79] proposed water quality system based on IoT devices in a smart aquarium. The goal of this study is to maintain the freshwater in aquarium tank at a suitable level for fish habitats and feeding condition. This system is designed with MEGA and NodeMCU controllers and is controlled by a smartphone in its operation. Arduino are used in the designed system. Wi-Fi communication on the NodeMCU is connected between the smartphone and the controller to control the operation. All collected data of water quality is displayed on LCD. Figure 5 shows the block diagram complete system of the IoT application. In summary, user can control feeding machine automatically through the IoT devices [78,79].

Machine Learning
It is said that "Machine learning is a subdivision of AI". Instead of doing by an explicit computer programming expert, algorithmic models are trained to take specific functions by recognizing and learning samples from data which they have automatically, with accuracy and speed. As mentioned above, this process can be categorized as supervised, semisupervised/unsupervised, and reinforcement learning with the most popular method is supervised ( Figure 6) [80].   Supervised learning needs to use an algorithm system to obtain experience through training with a labeled dataset. From these experiences, we can recognize and distinguish novel data that are not similar to the trained ones. After finishing trained stages, these algorithms will do their duties by testing new data resources/images to classify either the target images or not [81]. Unsupervised learning is the output data with no training dataset. It is very similar to supervised learning. The goal of this type of learning is to classify the input resources into different types.
Data not labeled, however, are the input data in unsupervised learning so the goal of this model is to classify the input data due to its own features. That is the robust different point between supervised learning and unsupervised learning [82]. A hybrid method of machine learning which combines two aspects such as supervised and unsupervised learning is known as semi-supervised machine learning. In this side, to reduce the labelled input data by a method, for instance a huge of unlabeled inputs are combined with a small amount of labeled inputs [82].
Machine learning tasks and the main algorithms are shown in Figure 7 [81,82]. Four main tasks in machine learning include classification, regression, clustering, and DR (dimensionality reduction). Of these, supervised learning models have the classification and regression. Clustering belongs to unsupervised while DR belongs to both supervised and unsupervised learning. There are many machine learning models which have been used including DT, SVM, NB, ANN, DL, EL and KNN. Each machine learning model has its own advantages and disadvantages. According to Zhao et al. [83], although DT and SVM are considered good models to use, they seem very sensitive to missing values. Otherwise, NB, ANN, and KNN are better than DT and SVM with many advantages such as being more efficient, less sensitive for missing values and having a high accuracy rate. Figure 8 shows an overview of applications of machine learning in aquaculture systems. In general, machine vision/computer vision is the main tool to measure the size of fish. Images are taken through a camera that are attached in a fish measurement system and then all collected images are sent to software and are analyzed and then the results compiled [81][82][83][84].

Measure Fish Size
Measuring fish size/fish grading is one of the necessary actions during culturing fish because of fish characteristics as well as the need to obtain the market size of fish. Size grading is known that the most frequent grading which is often operated in the rearing stage. Automation of aquatic species in aquaculture by machine learning can decrease costs for operation and management, as well as enhance profit and quality production. Measuring fish for the market is also very important. This work takes more time and is complicated because it is needed to discharge the abnormal fish. There are several studies which focused on different fish species in aquaculture.
White et al. [84] proposed a system using image processing algorithms to determine and identify the size of different fish species. Images of fish were obtained from several species such as Hippoglossoides platessoides, Solea vulgaris, Microstomus kitt, Pleuronectes platessa, Sebastes marinus, Sebastes mentella and Platichthys flesus. Figure 9 shows the Catch-Meter system includes conveyor, light box, and feeder. An Omron PLC (Kyoto, Japan) link to the main computer and software via an ethernet link is a controlled mechanical system. Then, collected images are sent to computer and are analyzed by a software program. The processing is shown in a flow chart in Figure 10    By using hardware and programing techniques, the authors design and develop fish sorting equipment to determine the fish length as well as classify the fish species in real time condition. That is the main goal of this study. The result shows image processing algorithms for a flatfish/roundfish. Measuring the fish length can be undertaken with 100% accuracy rate, with a standard deviation of 1.2 mm and determine the fish species with up to 99.8% accuracy rate. It is estimated that every 1 h, a single conveyor system can measure up to 30,000 fish.
Related to this approach, Costa et al. [85] conducted an experiment with aim of this study is to develop methodology tools to directly measure size, identify sex and recognize the abnormal performance of seabass (Dicentrarchus labrax L.) in online conditions in an aquaculture farm. The seabass samples are taken from five crossed population from the wild in European. There are 259 fish photographed and weighed individually with minimum weight 0.1 g. Elliptic Fourier analysis (EFA) on the outline coordinates is used to analyze the fish shape. The original images are transformed by two channels such as G (gray scale) and V (value) channel in the HSV color space.
The Euclidean distance of each pixel was calculated from the background. Matlab operator was adopted to binarize the image in Figure 11 [85]. The result showed that this is the efficient method to sort fish online and can be applied widely in many fish farms. Mustafa et al. [86] proposed this study to measure the length of fish automatically by image processing (FLUDI framework) instead of by measurement tools which are of high cost. Rastrelliger kanagurta and Selar crumenophthalmus species were used for this experiment. The figure shows the final interface of the FLUDI software to measure the actual the length of fish from the digital image. They used two kinds of camera such as Pentax camera (8.0 megapixel) and Sony (5.0 megapixel).
The Pentax camera (8.0 megapixel) and Sony (5.0 megapixel) has shown 0.74% and 0.19% error, respectively in this study. The result of study showed that FLUDI software has a very high potential to measure the actual length of fish from the digital image. However, the software can be applied to other objects without any object reference. The actual fish length from the digital image was tested by comparing the fish length obtained from the traditional measuring board (Figure 12) [86]. The result shows that the difference is very small, ranging from 0.74-2.19%. Jeong et al. [87] deployed a measure fish system based on a vision-based automatic system (VAMS) to determine total length (TL), body width (BW), height (H), and weight (W) without contact to the for non-contact measurement of morphometric characteristics of flatfish. A laser displacement and a load cell were used to measure H and W, respectively. In addition, an algorithm was proposed to catch and measure TL and BW based on the morphological image processing algorithm. Figure 13 shows an example of the method to measure the fish without contact through proposed VAMS for management of fisheries resources a conceptual diagram of a database management system for fishery resources based on the morphometric characteristics of flatfish [87]. The measured data can be collected from different locations such as a research center/institute, a fish market, or a fisheries resource investigation laboratory. After that, all those collected data are transmitted to the server.
The proposed VAMS includes a vision system (PV-500, Panasonic, Kadoma, Japan), a laser displacement sensor (Omron, ZX-LT030, Kyoto, Japan), a charge-coupled device (CCD) camera (lens: focal length of 25 mm, CCD: size of 2/3 inches), a white 30W LED backlight, a conveyor belt, and a road cell (Figure 11). The result shows that the VAMS system can measure flatfish reach 266.844 mm average of TL and can measure 900 individual fish per hour of capacity with a single conveyor. Furthermore, it can measure the fish with TL reaching 500 mm. In addition, Gerami et al. [88] assess the weight of salmon fish using machine vision. The fish samples were collected from a fish farm in Iran. There are 75 live specimens of rainbow trout (Oncorhynchus mykiss). A digital Cannon IXUS 960IS (12 mega pixels; 3000 × 4000) in the red, green and blue channels was used to take photo from left side of samples. The camera was located above the sample at a height of 45 cm. All taken fish photos can be transmitted to computer and analyzed by MATLAB (Matrix laboratory) version R2009x (Figure 14) [88]. This obtained a good result with clear images and assessed weight with high accuracy for fish by algorithms. From this result, it is concluded that machine vision should be an efficient tool for measuring weight as well as evaluate the visual features for fish. Therefore, machine vision could be used to evaluate the visual features of fish and estimate fish weight. It is suggested that this method is also used in fisheries processes in further work.
Meanwhile, Sanchez-Torres et al. [89] collected information from many works in the literature related to machine vision and then conducted a new concept for this field based on the existing information. It is a suitable system for measuring fish by using a single camera to take the photo in a controlled setup because it can manage better sample size and good condition images. Furthermore, a combination of homomorphic filtering, contrast limited adaptive histogram equalization (CLAHE) and guided filtering for fish image enhancement was used. The whole procedure to measure fish is shown in Figure 15 [89]. Results shows that it is a simple and efficient method to measure length and weight of fish such as polynomial regression at grade 3 and grade 4. Based on this result, this method is also applied to calculate the feed amount which is supplied for fish due to the length and weight of fish.
Sung et al. [90] conducted a study with the aim is to grader flatfish in automatically based on the size for effective and stable growth using machine vision. The designed grader has three components including a conveyor belt, machine vision and sorter ( Figure 16) [90]. Fishes are transferred to the conveyor belt to measure and grade. As fish and their length are detected by image processing, the location of the grader is managed by the length classification ( Figure 17) [90]. The machine vision part is composed of a camera, LED lights, and a darkroom with low cost. The figure shows the sort of process is an open-loop control system. Through the conveyor belt the fish is transferred from the hopper to the measure part. Then due to the classification, sorter's position is controlled. Finising measurement, the conveyor belt is worked again. Finally the fish is graded by the sorter. The result showed that this is an accurate system for grading with high efficiency and low cost.
In general, machine vision is the main tool to measure the size of fish. Images are taken through a camera which is attached to a fish measurement system and then sends all collected images to a software which are analyzed and results are compiled.

Fish Disease and Health Management
Disease is one of the severe issues which strongly effect on quality as well as aquaculture production. In aquaculture, disease results from the imbalance among many factors which come from host, pathogen and environment. There are different types of disease which is illustrated in two main categories: infectious (parasitic, fungal, bacterial, viral) and non-infectious (environmental, nutritional and genetic) [91]. Farmers cannot give accurate treatment for a sudden fish disease therefore it is hard to take treatment measures timely and effectively. This results are that fish disease spreads widely and fish can die in huge amounts causing a loss to the farmers [92]. Machine learning is a technique which can help detect and alert fish disease to farmer on time.
Epizootic ulcerative syndrome (EUS) is one of the popular diseases which caused a high mortality rate for fish which occurred in many countries such as Australia, India, United Kingdom, Japan, Thailand and Pakistan. It is a fungal disease named Aphanomyces invadans. Malik et al. [93] investigated a method to identify the fish diseases by combination two techniques including Principal Component Analysis (PCA) and classify by an Algorithm Neural Network (ANN). Figure 18 shows the proposed methodology. The input images (fish disease images) were collected and then morphology operations were applied (converting the image into gray, removal of noise and segmentation) [93]. The result showed that FAST-PCA-ANN has better classification accuracy and efficiency than the existing combine technique HOG-PCA-ANN.
Chakravorty et al. [94] identified four infected EUS species such as Clarias batrachus, Puntius chola, Labeo bata and Labeo gonius from different parts of the Barak Valley, Assam. They used two kinds of machine learning algorithms including Principal Component Analysis (PCA) and K-means clustering with a flow chart for experiments showed in Figures 19 and 20, respectively [94]. The results showed that the algorithm has more than 90% accuracy for PCA. In conclusion, for detecting skin color and extracting texture feature, HSV is a good choice. For detecting fish pathogen and extracting brain tumor, morphological operation should be used.   According to Divinely et al. [92], you can detect fish diseases (EUS ulcers-a fungal disease) timely and effectively using a probabilistic neural network (PNN). The method is shown in Figure 21 following these steps [92]. Input and database images are collected from some sources and various internet resources, respectively. Then images are put through the preprocessing to prevent unwanted distortions or to enhance some image features, which are useful for further processing in which RGB to gray conversion has been applied. Several extraction methods have been applied CWT (Curvelet Wavelet Transform) for efficiency of detection and finally the target fish diseases such as ammonia poisoning, camallanus worm and dropsy are classified. Others not infected are recognized and separated. Then GLCM (Gray Level Co-Occurrence Matrix) is used to reduce the dimension and preserve useful information. A supervised learning algorithm (PNN) was used in this study. The result shows that the proposed combination of CWT-GLCM-PNN is an efficient and accurate way to detect fish disease.
Ahmeda et al. [95] identified diseases from salmon cultured in a farm. The work is divided into two portions: image preprocessing and segmentation. The image processing is to reduce noise and make image become much clearer. The segmentation extracts features and classifies disease from images with the support of a Support Vector Machine (SVM) algorithm of machine learning with a kernel function. Figure 22 shows a solution framework to classify the salmon disease. Also, Figure 23 shows a system architecture which contains two phases, such as building phase and deployment phase [95]. The results showed that using SVM is an efficient method to identify the fish diseases with high accuracy rate. Meanwhile, Figure 24 shows various appearances of image processing [95,96]. In short, machine learning is popularly used to identify the fish diseases. There are several machine learning algorithms for example ANN, HOG, PCA, SVM. In some cases, they can use to combine with machine learning algorithms such as ANN-HOG-PCA which may show the high accurate percentage to detect the fish diseases, particularly fungal disease.

Counting
It is necessary to count cultured species in aquaculture based on computer vision technology including video analysis and image processing due to counting [96]. Raman et al. [97] deployed a counting system which is used for counting larvae and juveniles in fish hatcheries by an image processing technology. It detects the image of larvaes and juveniles and then sees and counts the number of larvae and juvenile fish from these images by counting the separate single image. Figure 25 shows the methodology of machine learning classified into four steps: image acquisition, image enhancement, segmentation, and classification [97]. This is to count the number of larvae and juvenile fish through image detection. The basic model of captured images for experiments are shown in Figure 26 [97]. Via camera, larvae and juveniles are captured. These captured images are transferred to a computer and software and finally the results are obtained after analysis. The results show that the installed system has an accuracy rate of 82% for larvae and 87% for juveniles.    For counting feed in aquaculture, Cao et al. [98] used machine vision to count feed for fish to manage the residual feed in aquaculture. A current contour is a single pellet. Based on current contour area, they counted exactly the number of pellets in a heap. Figure 27 shows the flow chart of the counting strategy. Also, Figure 28 shows the underwater images and aquaculture site [98].  The waste of feed causes many problems for aquaculture: decreasing profits; polluting the environment and affecting the health of cultured species. Therefore, the goal of this study is to count the proper amount of feed for culturing fish using an algorithm. They conducted experiments through different water turbidities, feed adhesion rates and others with over 100 pellets. Using algorithms is a useful solution to solve the problems in counting number of feeds from the real production in the aquaculture system. It is also efficient in turbid underwater environmental conditions. It can apply in automatic feeding systems with a high accuracy rate. This system can be deployed in practical production.
Zhang et al. [99] proposed a model to count the number of fish automatically instead of the traditional artificial sampling method. The goal of this system is to counting number of fish in cages cultured in an offshore environment. A hybrid neural network model based on a multi-column CNN and a DCNN is used to observe, realize and count the number of fish in a population cultured offshore in real time, accurately, objectively and without losses. Experiment video data is collected from an adult salmon cage by a submerged camera from the bottom up ( Figure 29) [99]. The result showed that the counting accuracy rate is up to 95.06% of the proposed hybrid neural network.

Classification and Identification
It is said that classification as well as identification find it difficult to get accurate results by using traditional methods with the naked eye or costly by using genetic methods. Therefore, machine learning and computer vision are one of the efficient methods to classify and indentify fish in a short time with high accurracy rate.
For instance, Coz-Rakovac et al. [100] identified three aquaculture-affected species such as 120 seabass (Dicentrarchus labrax), 98 sea bream (Sparus aurata L.), and 66 mullets (Mugil spp.) thanks to biochemical data using machine learning methods. The decision tree was used and gave the best results among the machine-learning methods with 210 samples classified (85.71%) correctly and 35 (14.29%) incorrectly. There are 3 species which are identified based on their biochemical traits. The methodology of this study is shown in Figure 30 with decision tree and biochemistry analysis (AST, TP, TRIG, CHOL, and GLU collected from blood) [100].
Allken et al. [101] used Deep Vision camera to take images from the marine stock of marine stock. These images are materials for deploying a deep learning neural network to automate the classification of species. The results show that a classification accuracy of 94% was achieved for blue whiting, Atlantic herring, and Atlantic mackerel, showing that automatic species classification is a viable and efficient approach, and further that using synthetic data can effectively mitigate the all too common lack of training data. Figure 31 presents the procedure to identify the fish [101]. The sample fish images extract from actual ones and attach on the empty background at any position with random size and directions. The goal of this processing is to make images that is similar to deep vision photographs. The number of fish per image varies between one and six.

Conclusions
Smart aquaculture has expanded greatly in the aquaculture industry in an efficient, automated and accurate way in recent years. Although applications of artificial intelligent in aquaculture is progressing quickly, there are still many challenges to operate fully automated systems. Due to the nature of its practices and products, the lack of human management is high in risk, as there is still a need for a certain amount of observation, information analysis, and decision making during the fish farming process.
The applications of machine learning and computer vision in aquaculture have been contributing to the development of the aquaculture industry in an automatical trend, and improving farming productivity. The advantage of using algorithms or images is more accurate and faster than manual methods. However, the cost of machine learning and computer vision is high, so it is only recommended to apply it to large-scale farms with species of high economic value.
In this paper, we review the application of artificial intelligence into smart aquaculture, particularly focused on machine learning/vision, and its applications for aquaculture. Researchers and aquaculture famers studied the implementation of machine learning with algorithms or machine vision in smart aquaculture. The most popular applications measure the size and weight of cultured species; fish diseases; fish count; classification and identification, feed controlling; and monitoring water quality.
In the future, machine learning and computer vision applications should be more accessible in smart aquaculture deployed not only in hatcheries, farms on land, but also in aquaculture systems offshore. In particular, we can apply machine learning and computer vision for aquaculture on offshore areas such as cages to detect the fish diseases, manage the safe of cages, weight and size of fish, etc. In fact, the detection of diseased fish or the broken cage net system is really neccessary. Normally, farmers often use manual methods for managing the whole aquaculcture processing. For instance, diseased fish can be recognized as fish that are weak swim on the surface or people must dive into the cage to check. Therefore, using machine learning/vision connected to a submered camera is valuable. This system can recognize fish diseases, and safely manage the cage, weight and size of fish directly and continuously, as a future model system for cage culture in offshore.