Читать книгу Machine Learning Algorithms and Applications - Группа авторов - Страница 32
2.3.1 Model Architecture
ОглавлениеTo overcome the problem with conventional image processing algorithms as stated in Section 2.2, machine learning (ML) techniques were employed to segment the eggs from the background (egg sheet). The features to be considered for segmentation such as color (grayscale pixel values), the diameter of eggs was collected manually using image processing and feature engineering, later fed into various ML algorithms (KNN, decision trees, and SVM). ML algorithms provide accuracy over 90% but fail when the input data is of a different class (breed in terms of sericulture field) when compared to the class for which the algorithm was trained since the color of eggs is not the same for different breeds of the silkworm. To overcome this issue, a supervised CNN technique is used which requires the true label while the features are selected automatically. The primary aim of our approach was to accurately count several silkworm eggs present in a given digital image and further classify them into respective classes such as hatched and unhatched. Figure 2.2 represents a sample digital image of the egg sheet with a different class of eggs being marked with specific colors manually. The eggs marked with green color represent the hatched class (HC), while eggs marked with red color represent the unhatched class (UHC).
To identify the core features of the eggs, for segmenting them from the background sheet and to classify them into respective categories, a simple deep learning technique was used with four hidden layers to provide results that are much more accurate compared to conventional methods. Deep learning models are trained using TensorFlow framework to provide three different results such as foreground-background segmentation, detecting eggs, and classifying detected egg.
The core deep learning model used in our experiments is shown in Figure 2.3. The model consists of convolution layers, max-pooling layers, and fully connected layers. These layers are trained to identify the features of egg, while the last layer is modified to provide categorical or continuous data. The core CNN model is trained using a stride of (2 × 2) and kernel of (5 × 5) for convolution, with (2 × 2) max pooling and a fully connected layer consisting of 3200 neurons. The input to the CNN model is a 32 × 32 dimension image with three color channels, RGB.
Figure 2.2 Silkworm egg classes: hatched eggs and unhatched eggs.
Figure 2.3 Core CNN model.