Our inspiration came from a common problem we identified with in many of our lives. On average, Americans spend over 100 hours a year in traffic not being productive, so we designed an app to make the best use of that time, for students and adults alike.
What it does
Our app takes an input from a text field, and at the press of a button, summarizes the entire body of text. Then, with a play, pause, and cancel button, the user can listen to the summarized text at their convenience. The speech synthesizer talks quickly, and efficiently reads out the most import aspects and information from a body of text.
How I built it
We took in text from a text field first to process it. Then we divided the text into a 3D array of paragraphs, sentences and words. We gave each sentence a rating based off of the number of stop-words it contained, and also scored the intersection between sentences. With these, we eliminated unimportant and similar sentences. Additionally, we made sure to keep sentences that included bolded text or numbers. Next, we used Natural Language Processing to identify certain parts of speech, and remove unimportant adjectives and adverbs. Finally, we used AV Speech Synthesizer to speak the summary aloud to the user.
Challenges I ran into
Some challenges I ran into were learning the various tools and syntax of Swift, as well as debugging certain NLP bugs.
Accomplishments that I'm proud of
We are proud of the final product of the app as a whole after overcoming a variety of bugs while creating the code. We are the most proud of using NS linguistics which uses natural language processing to determine key words and ineffectual words which are compiled when producing the summary of the input.
What I learned
I learned a lot about using AVFoundation and NLP, and have greatly increased my knowledge about Swift programming in general.
What's next for EZ Reader
We hope to improve the app in recognizing different school subjects and literature. For example, we will attempt to make EZ Reader recognize Science in order to summarize the facts and definitions from the rest of the reading. However for History, the app would summarize the important names and dates from the passage.