20 Interesting Computer Science Project Ideas
1. Fuzzy Counter Server
Suppose you created a social network like Facebook, user uploads videos, others will watch it. The video will get millions of views in a few minutes. You want to display the view count of the user-uploaded video in the feed. What technique will you use? If you think that you will use a SQL database to store the watch count, then the database will hold millions of rows. The performance will be slower. This technique is not efficient in such a larger system.
The Count-min-sketch is a popular and efficient technique to tackle this problem. Learn full details here. A Fuzzy counter is a probabilistic counting machine that can be used to count the number of times an event occurs in a large stream of data. This technique is used by the applications like Youtube, Facebook, Instagram etc to display the view count of a particular content. This project aims to create a scalable fuzzy counter server that accepts a large stream of real-time data. The server will have a REST API to request the count of a particular key, it should return the probabilistic nearly accurate count by using the Count-min-sketch technique.
2. Audio or Text to Sign Language Translator Bot
The audio or text-to-sign language translator will translate the given audio or text data into sign language using a Cartoon character with help of AI and Machine learning technology. This will help the people who have hearing loss to interpret the video. This can be installed in retail industries, airports or video platforms like Youtube or Facebook so that everyone will enjoy and understand the visuals.
3. Secret Vault and API to Integrate
Vault secures, stores, and tightly controls access to tokens, passwords, certificates, API keys, and other secrets in modern computing. With the increasing risk of cyber threats, storing the passwords of other components such as a database, external API, and private keys are not safe in the application configuration file in a deployed application on a server. Hence, such a service must integrate with the secret vault in order to get the required credentials on demand. This will make the application hold less risk of securing passwords or other secrets.
4. Identity Card Verification System
Identity card verification is everywhere. We use them to activate a sim card, open a bank account, etc. Each of these requires a physical verification, either the customer needs to go to the store or through a doorstep verification service where an agent will reach the customer’s house and do the ID verification. This is time-consuming and more costly to the company. A customer needs to wait for hours, or days, to get the service activated. Also, the service provider needs to hire an agent and give them a salary, perks etc. It leads to a poor experience for both customer and the service provider.
The Identity Card Verification System project aims to automate the entire ID card verification process and provide a better experience for both the customer and service provider. This application will be a mobile app or a web-based app which will have a User interface. The service provider’s app can integrate with this app the way an online shopping app integrates with a payment gateway to process payments. For example, suppose you want to open a bank account with XYZ bank, first, you go to their online banking app/website, and navigate to Create account page. You enter the details, and then you will be taken to the ID card verification section. The XYZ bank’s app will redirect you to this ID verification app by passing the appropriate information. The ID card app will pop up a camera, where you will need to show your ID in front of the camera. The app will capture different shots along with your face too. The ID verification app will then use image processing techniques to match your face with the ID card photo. Also for added security, the user will be asked to write some random numbers or alphabets on a sheet of paper and show them in front of the camera, the app will use character recognition technology to recognize the character you entered and also your face. The result of verification will be submitted back to the XYZ bank’s app.
5. Online Calendar to Share and Schedule Meetings
Imagine a situation where you got a call from a recruiter that you're shortlisted for a job. The recruiter asks for your time to schedule the interview. The recruiter will send you an available time. You look at your calendar and realize that you are busy at this chosen time. You will reply to the recruiter asking to change the time. The recruiter reschedules it to another day. You are still not happy with it and ask again to change the schedule. The awkwardness continues.
The online calendar app solves this problem. The recruiter mentions all his availability and busy time in this online calendar app and shares the link with the user. The user is free to choose an available day and time from the calendar where both are available. After choosing and submitting, the user will get the invite to their email box. This helps both the recruiter and the candidate to easily choose a mutual schedule.
6. Online Multi-User Text Editor
An online-multi user text editor is just a text editor (software as a service) hosted online so that users can create/edit text files, save them and access them anywhere, on any device, at any time. The multi-user features enable multiple users to access and edit the same text file. By doing this project, you will learn distributed systems, data conflict resolution, consistency and eventual consistency etc.
7. Online Medicine Ordering System with Prescription Recognition
Why can't you order medicine online when you can order food online? This project can be delivered as both mobile and web-based applications. When you go to a medical store/drug store/chemist you can buy two types of medicines, those with a prescription and those without a need for a prescription. This is a limitation of creating the online medicine ordering system. We can tackle this problem by utilizing artificial intelligence and machine learning technology to recognize the doctor’s written prescription to order prescription medicines and adhere to the country's rules. The system should be capable to recognize any prescription, recognize doctors' information, patient details and medicine details. Based on these data, the app should look up the medicine from the available catalogue, and display it to the user.
8. Software to Eliminate Human Voice from the Audio
There are softwares which eliminate the background sound from audio data and retains only human voice. Such softwares are useful for singers, voice-over artist, etc to eliminate background noise and sound. However, there is a need for software that eliminates human voice from the audio data and retains only the background sounds. This is helpful to create ASMR. This will be helpful for vloggers who want to make vlogs with only surrounding sound, for example, nature, motorbikes, other vehicles, wind, rain etc. Also, this is helpful for artists who make videos of their artwork. From the captured audio, they just want to keep the micro sound of the brush brushing the sheet, pencil marking on the paper, etc. Utilize the power of AI and machine learning to develop this project.
9. Event Feed and Reservation
This app is like Facebook/Instagram/Tictok but shows only the upcoming events around you based on your location. Imagine a situation where you relocated to a new city, you want to get some entertainment by attending music, dance, or cultural events around you. This project will be a mobile app that helps users to find the upcoming events around them. The event managers will be able to add new events, details, photos, available tickets, prices etc. The users will find these events in their feed, choose a situation event, and book the ticket.
10. Online Exam Tool with User and System Behaviour Analysis to detect Fraudulent Users
Due to the pandemic-like situations, people tend to lead their life from their homes by connecting to the internet. Everything has become online from schooling to food ordering. One vital area is the online examination system. This system should be highly fool-proof because the users will find various different ways to cheat in the exam. This project will focus on building a tool which can be integrated with an online examination system and detect and report cheats. During the exam, the users shouldn’t connect their system to an external monitor, or external devices such as USB, microphone desktop sharing, session sharing, task switching, opening a new tab or switching to another application etc. The tool must be capable of detecting not only computer-related cheats but also user behaviours. The tool can have eye tracking features, hand movement, and neck movement detection features through a microphone to identify if the user is cheating or not. Also, the room must remain silent. Any external noise or sound should be captured through a microphone. Utilize the power of the web and artificial intelligence, and machine learning to build this project.
11. Crime Report, Search, Visualization and notification
Are you aware of how many crimes happened around your area last week? How many robberies? Vehicle thefts? House thefts? Harassment? is your street safe? This project can be co-developed with the authorities to build a system that enables users to report crimes. Police can update their investigation result on the app. The report should be visualized to public users. The user will have the option to search an area by Pincode/postal code/zip code. The app should display the number of crimes that happened in the past in that area. The app should display how many crimes happened yesterday/last week/month and year, and how many are already resolved, and still under investigation. This helps users to get some understanding of how well the police authority is performing in that area. Users will also be notified about the new crime that happened in recent times. This app will also help people who relocate to a new city, choose a safe area to find a house.
12. AI Text to speech with User’s voice cloning
Text-to-speech application is common now a day which converts the given sentence in the form of text to speech(audio) form. The traditional application just lookups at the word recording from the database and produces the final audio output. Users will have a limited number of audio types to choose from (male voice, female voice etc).
This new text-to-speech project proposes a new system that uses overdub(a machine learning model) that asks users to record a sample sentence. The system learns the user’s voice and then converts any user-entered sentence to speech audio with the user’s realistic voice.
13. Web Crawler
Web crawling is a powerful technique to collect data from the web by finding all the URLs for one or multiple domains. A web crawler starts with a list of URLs to visit, called the seed. For each URL, the crawler finds links in the HTML, filters those links based on some criteria and adds the new links to a queue. All the HTML or some specific information is extracted to be processed by a different pipeline.
14. Music Genre Classification System
Audio processing is an interesting topic in data science like image processing. One such application is music genre classification which aims to classify the audio files into a certain genre of music to which they belong. The application is very important and requires automation to reduce manual error and time because if we have to classify the music manually then one has to listen out to each file for the complete duration. Machine learning and deep learning algorithms are used for such classification techniques.
15. Authentication and Authorization Webservice
For any website or application where users can create and log in to their accounts, it is essential to rule out the possibility of unauthorized access. Developing an authentication system in all companies takes resources and time. Hence this project aims to create a public authentication/authorization web service which all companies can integrate into their software system. The system would support QR-Code and OTP-based 2-factor verification in order to ensure security.
16. Android/iOS-based Water Drinking Reminder app
Water is essential to our life, drinking enough and the right quantity of water is vital to our health. The Water Drinking reminder app aims towards periodically remind the user to drink the water and track the quality of the water that has been drunk. The app can also have the feature to integrate with a smartwatch to capture the footsteps, workouts, heart rate etc and recommend the quantity of water to be drunk depending on the captured figures.
17. ChatBot
A chatbot is a software or computer program that simulates human conversation or “chatter” through text interactions. The Chatbots are useful for the users to get clarification for frequently asked questions without needing to connect or waiting for a human customer assistant.
18. Centralized patient record management — reduce papers — can be used by all the hospitals
Suppose a person ‘Neel’ goes to a hospital for treatment. He first stops at the reception to feed all his details and medical records in a long queue. The receptionist makes a physical file containing all the details given by the patient. This is handed over to medical staff to further enter the diagnostic and medicine details. In the end, the record file will pile up with a bunch of details. The hard problem comes when the patient changes his hospital. He has to wait in a long queue again and fill in all the details. Also, the new doctor will again have to perform all the tests once again.
This system is a centralized database containing the patient record, which can be shared with all the hospitals for seamless identification of the patient and their health. When the patient enters the hospital the workflow starts as the reception user creates a new record by entering the personal info and sends the record to the assigned department; at this stage, the nurse starts to update the record by entering the physician comments, required treatment, and sends lab test when it is required. The database record contains the patient's personal info, department lies-in, physician, tours, treatment and lab results. When the patient changes his/her hospital, the health record can be lookup at by providing an identity card. It will be a seamless experience for both patient and the health staff.
19. Parking lot booking system — bar code, payment, vehicle size, time slot, building
The parking lot booking system will be web-based with an additional android/iOS client that’s used to book a parking lot in a parking location. The parking space can be dynamically added, and the type of slot can be from larger vehicles to motorcycles or bicycles. The admin or parking manager will be able to manage the parking building, prices, reports etc. The vehicle owner will be able to book a slot for their vehicle, pay and get a receipt. The receipt will have the information of the vehicle, parking slot and a QR or Bar code to validate the receipt.
20. Email Spam Filter System
Text mining (deriving information from text) is a wide field which has gained popularity with the huge text data being generated. Automation of a number of applications like sentiment analysis, document classification, topic classification, text summarization, machine translation, etc has been done using machine learning models.
Spam filtering is one of the classification tasks which involves classifying an email as spam or non-spam mail.
Now, What’s stopping you from picking a project from above list, implementing it, check in the code and making your Github beautiful?