顔の表情は人によって異なり、ランダムな画像の明るさ、コントラスト、解像度はすべて異なります。これが、表情の認識が非常に難しい理由です。この記事では、畳み込みニューラル ネットワーク (CNN) を使用して、人間の 7 つの基本的な感情 (怒り、嫌悪、恐怖、喜び、悲しみ、驚き、中立) の顔の感情を認識し、各感情の確率を予測して割り当てる効率的なシステムを提案します。 .深層学習モデルはデータから学習するため、提案されたシステムは、より良い予測のためにさまざまな前処理ステップで各画像を処理します。すべての画像は、トレーニング データセットに含めるために、最初に顔検出アルゴリズムを通過しました。 CNN は大量のデータを必要とするため、各画像にさまざまなフィルターを使用してデータを複製しました。サイズ 80*100 の前処理された画像は、CNN の最初のレイヤーへの入力として渡されます。 3 つの畳み込み層が使用され、続いてプーリング層と 3 つの高密度層が使用されました。密層のドロップアウト率は 20% でした。モデルは、公開されている 2 つのデータセット JAFFE と KDEF を組み合わせてトレーニングされました。データの 90% がトレーニングに使用され、10% がテストに使用されました。結合されたデータセットを使用して、最大精度 78.1 % を達成しました。さらに、リアルタイムで感情を分類するグラフィカルユーザーインターフェイスを備えた提案システムのアプリケーションを設計しました。
Facial expressions vary from person to person, and the brightness, contrast, and resolution of every random image are different. This is why recognizing facial expressions is very difficult. This article proposes an efficient system for facial emotion recognition for the seven basic human emotions (angry, disgust, fear, happy, sad, surprise, and neutral), using a convolution neural network (CNN), which predicts and assigns probabilities to each emotion. Since deep learning models learn from data, thus, our proposed system processes each image with various pre-processing steps for better prediction. Every image was first passed through the face detection algorithm to include in the training dataset. As CNN requires a large amount of data, we duplicated our data using various filters on each image. Pre-processed images of size 80*100 are passed as input to the first layer of CNN. Three convolutional layers were used, followed by a pooling layer and three dense layers. The dropout rate for the dense layer was 20%. The model was trained by combining two publicly available datasets, JAFFE and KDEF. 90% of the data was used for training, while 10% was used for testing. We achieved maximum accuracy of 78.1 % using the combined dataset. Moreover, we designed an application of the proposed system with a graphical user interface that classifies emotions in real-time.