Artificial intelligence is becoming increasingly useful in creating personalized shopping experiences on e-commerce websites, user-specific advertisements, classifying objects, and detecting colors from images. Fashion is one of the most critical industries in our world today. Style has become one of the primary ways in which people express their personality and in which they distinguish themselves from those around them. In this project, we are creating a Fashion Recommendation System using Artificial Intelligence in order to classify the user’s clothes and recommend the most suitable outfit for a given occasion using a recommendation algorithm. The proposed system shows that it can process the user’s clothes from the images, identify the type and color of the outfit and finally recommend the most suitable outfit for the given occasion based on the user’s existing clothes. The system provides a wardrobe, where users can store images of clothes that they have. Each user is associated with a wardrobe. We explore machine and deep learning techniques to classify the type of clothes from images and to identify the color of the clothes. Finally, we propose an algorithm that is used to recommend matching clothes.
Introduction
I. INTRODUCTION
The Fashion industry is one of the larger industries around the world. One of the things that has remained constant throughout human civilization is humans covering their bodies with a piece of cloth. Initially, this cloth was worn as protection from the harsh climates of those ages. Later on, as we humans learned to fend for ourselves from the unforgiving climates, the cloth started to serve a different purpose. Fashion these days showcases the individuality of the person. There are many things that can be said about a person based on their fashion sense.
There is currently no existing system that is capable of recommending clothes based on the occasion. Different occasions call for different clothing. Moreover, a lot of fashion is based on the color combinations of outfits. A person with no or little fashion sense will have a hard time to decide on clothes that leave a lasting impression. The proposed Fashion Recommendation System is intended to be used by individual users in order to store images of the clothes that they own in what is called a digital wardrobe and also to get recommendations by the system on what clothes to wear for a given occasion. The main aim of the project is to recommend the most appropriate clothes for a given occasion based on the clothes existing in the user’s wardrobe to relieve the user of the burden of making decisions about what clothing to wear. Such a system should be capable of helping someone who has no fashion sense to wear clothes that leave a good impression on others. The system should be such that it is easily accessible and easy to take advantage of the various features that it provides. One of the features should be the ability to store images that the user uploads into a wardrobe. A wardrobe is a very useful entity that the user can use to view and manage the images of clothes that they have uploaded. This feature can also be used by the recommendation algorithm to recommend the clothes. Another feature is the classification of the type and color of the clothing that is uploaded by the user. The system should be capable of handling the 4 basic clothing types: Shirt, T-Shirt, Pants and Shoes.
II. LITERATURE REVIEW
The work of this project is based on combining two deep learning models to detect the type and color of the clothing in the given image. The recommendation algorithm however is written by us. Hence, it is safe to say that no existing system has been proposed but work has been done in detecting objects, types and colors of clothes by using public datasets and applying machine learning techniques. The related work is presented as follows:
In [3], deep learning classification of clothing apparel was discussed. The approach followed in this system was using Convolutional Neural Networks (CNNs). The Deep Learning technique Inception v-3 was used for different object detection problems. A wide variety of clothing types were used in the paper about 13 different classes, some of which were: Coat, Poncho, Blouse, Dress, Shirt, Vest, Lingerie, T-shirt, Uniform, Suit, Sweater, Jacket, Sports sweater. The recognition rate is about 70%.
Out of all these classes the ones are of utmost importance are only Shirt and T-shirt. Both of which have accuracy rates of 50 and 60% respectively. There are two more classes of interest namely Pant and Shoes that were not included in this study.
We need a model with better accuracy and capable of handling the two missing classes as well. Another drawback is there is no standalone web application that makes it easy for the users to use. Hence, we cannot use this in our system.
The drawback is there is no standalone application that can be used by the patient to use this model.
In paper [4], deep learning techniques were used to detect the type and color of the clothing. Hence, Convolutional Neural Networks were used. The resultant accuracy of the resultant model was around 86%. The intention of this paper was to create model that does proper labelling of clothes. Hence it is not a Fashion Recommendation System that recommends clothing choices to the user. We can improve the accuracy and also create a user friendly website for ease of access. The paper also does not provide any wardrobe for the user.
III. SYSTEM ARCHITECTURE AND IMPLEMENTATION
A. Three stages of the System
Color Detection : The following is the model architecture used to build the deep learning CNN model for detecting type of the clothing in the image given to the model. The labels 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 refer to clothes images with colors 'black', 'blue', 'brown', 'green', 'grey', 'khaki', 'marron', 'orange', 'pink', 'red', 'white', and 'yellow'.
Clothing Detection : The following is the model architecture used to build the deep learning CNN model for detecting type of the clothing in the image given to the model. The labels 0, 1, 2, 3 refer to images with shirts, shoes, pants, t-shirts .
Fashion Recommendation Algorithm: After the detection of color and type the outfit will be saved locally on the disk. After which the fashion recommendation algorithm is applied to the clothes in the wardrobe. The algorithm is as follows:
a. Input
One of the items from the user’s wardrobe can be accepted as the input but is optional. Algorithm Recommend(type ,color , occasion){
Declare and initialize an empty list res that will hold the result.
Initialize the value of max variable as a large negative number.
Load the fashion matrices for pant, shirt and pant,shoe color combinations that have been created for different occasions.
Select the fashion matrix based on the occasion.
for i in pant colors available in the wardrobe:
for j in shirt colors available in the wardrobe:
for k in shoe colors available in the wardrobe:
if (combination of i, j and k colors exists in resultant list) then: continue with the next iteration.
else:
if max < (0.5 * pant_shirt[i][j] + 0.5*pant_shoe[i][k]): max=(0.5 * pant_shirt[i][j] + 0.5*pant_shoe[i][k]) Append the colors i,j and k to the resultant list.
6. Repeat 5 until all the best possibilities are considered.
7. Return the resultant list consisting of pant, shirt and shoe color combinations.
8. Display the images of clothes from the wardrobe that match the combination.
9. Iterate through the list of color combinations as the user requests for the next best combination.
}
b. Output: Returns a list of different color pant, shirt and shoe images that are most suitable to wear for a given occasion
IV. RESULTS
V. ACKNOWLEDGMENT
This research was made possible under the guidance, support, and motivation provided by our faculty, who have helped us to pursue our interests in the field of Artificial Intelligence. We are thankful to Ms. Nagelli Archana, Assistant Professor, Dept of CSE, SNIST; and Mrs. Talakoti Mamatha, Assistant Professor, Dept of CSE, SNIST.
Conclusion
The Fashion Recommendation System is mainly used to recommend the best possible outfit combinations to a user who has no fashion sense based on their wardrobe . It may not always provide the best possible outfit to wear for an occasion as the system is dependent completely on the clothes present in the user’s wardrobe. Also another reason is that fashion is highly dependent on the time period. However the system does a great job in inculcating a fashion sense among the users and can provide the best recommendations based on the user’s wardrobe. Since the system is implemented as a website, it is very easy for the end users to access as well as use. The scope of this system can be expanded by including the ability to detect the various design and patterns on clothing, and to increase the number of occasions.
References
[1] Mohamed Elleuch, Anis Mezghani, Mariem Khemakhem, Monji Kherallah “Clothing Classification using Deep CNN Architecture based on Transfer Learning” ,2021 DOI:10.1007/978-3-030-49336-3_24
[2] Saurabh Gupta, Siddartha Agarwal, Apoorve Dave. “Apparel Classifier and Recommender using Deep Learning.” (2015).
[3] Bossard, Lukas, Matthias Dantone, Christian Leistner, Christian Wengert, Till Quack and Luc Van Gool. “Apparel Classification with Style.” ACCV (2012).
[4] Krizhevsky, Alex, Ilya Sutskever and Geoffrey E. Hinton. “ImageNet classification with deep convolutional neural networks.” Communications of the ACM 60 (2012): 84 - 90.
[5] Congying Guan, Shengfeng Qin, Yang Long, (2019) \"Apparel-based deep learning system design for apparel style recommendation\", International Journal of Clothing Science and Technology.
[6] Stephen Marsland, ?Machine Learning – An Algorithmic Perspective?, Second Edition, Chapman and Hall/CRC Machine Learning and Pattern Recognition Series, 20