Interactive content
The example projects on this page utilize the TwelveLabs Video Understanding Platform to create social and public goods. These projects demonstrate how multimodal AI can drive positive changes, exemplifying its transformative power.
Israel Palestine Video Understanding
Summary: The “Israel Palestine Video Understanding” application addresses misinformation and promotes empathy regarding the Israel-Palestine conflict.
Description: The application aggregates and summarizes content from YouTube and Reddit, presenting diverse viewpoints on the issue. These summaries, covering a range of opinions, are then visualized using an algorithm similar to T-SNE , offering a comprehensive understanding of the conflict’s various perspectives. The application was developed by Sasha Sheng.
GitHub repo: Israel Palestine Video Understanding
Integration with TwelveLabs
This application invokes the /summarize
endpoint to create summaries for videos based on their content, specifically focusing on their stance regarding the Israel-Palestine conflict and the level of violence depicted:
Accelerate SF Notifications
Summary: The “Accelerate SF Notifications” application simplifies public hearings for residents and special interest groups, particularly those focused on San Francisco housing developments.
Description: The application addresses the challenge of keeping up with numerous and lengthy public hearings, where the critical issue is identifying relevant discussions without watching entire meetings. The application was developed by Rahul Pal, Lloyd Chang, and Haonan Chen.
Key features include:
- Data scraping: Extract information from public agendas, live-streamed hearings, and sources like San Francisco Gov TV.
- Issue tracking: Utilize algorithms to pinpoint and extract discussions about housing projects and specific issues within hearings.
- Automated notifications: Implement a system that sends real-time alerts.
GitHub repo: Accelerate SF Notifications
Integration with TwelveLabs
The application uses the /summarize
endpoint to perform the following main functions: summarize videos and generate lists of chapters.
-
A summary encapsulates the key points of a video clearly. The code below shows how the application generates summaries:
-
A list of chapters provides a chronological breakdown of all the parts in a video. The following code shows how the application generates lists of chapters:
The /gist
endpoint generates swift breakdowns of the essence of your videos in the form of titles, topics, and hashtags. The following code shows how the application invokes this endpoint:
Deep Green
Summary: The “Dep Green” application uses the TwelveLabs Video Understanding Platform to accurately detect and map ocean trash using aerial and satellite imagery.
Description: The application offers a solution to the problem of plastic pollution in the oceans. It detects different types of ocean trash with over 90% accuracy and can scan over 500 hours of video daily. Trash is timestamped and geographically pinpointed, allowing easy data analysis and export. The application was developed by Shalini Ananda and Hans Walker.
GitHub: Deep Green
Integration with TwelveLabs
The search_trash
function searches for videos containing specific types of trash, returning a list of such videos with key information about each:
The search_video_single
function finds specific content within a single video:
The classify_latest_video
function classifies videos into specific environmental categories:
RememberMe - Dementia Assistant
Summary: The project addresses the critical challenge of assisting individuals with dementia in retaining their independence and enhancing their quality of life.
Description: The application is a comprehensive digital support system with a home screen displaying the current date, important reminders, and action buttons. It also has a chatbot that users can use to ask questions about their lives. The application collects data such as video, audio, and personal notes, and it utilizes the TwelveLabs Video Understanding Platform to convert multimedia information into text for the chatbot database’s organizational and storage purposes. The objective is to provide a seamless and intuitive platform that enables users to recall important details about their lives, manage daily tasks, and maintain connections with people and places that matter to them. The application was developed by Tatiane Wu Li, Pedro Goncalves de Paiva, Aleksei (Alex) Korablev, and Na Le.
GitHub: RememberMe.
Presentation: RememberMe.
Integration with TwelveLabs
The submit_video_for_processing
function uploads a video to the platform by invoking the POST
method of the /tasks/external-provider
endpoint. Upon receiving the response, the function processes it to determine the outcome. If the upload is successful, the function returns the unique identifier of the submitted task. In case of an error, the function returns an error message that details the specific reason for the failure. This helps developers identify and resolve any issues with the video upload process.
The get_video_summary
function takes the unique identifier of a video as a parameter and invokes the POST
method of the /generate
endpoint to summarize it. If successful, it returns the generated summary; otherwise, it prints an error message and returns None
.
CamSense AI
Summary: “CamSense AI” is an AI-powered application that assesses webcam videos, providing instant insights and alerts. It uses the TwelveLabs Video Understanding Platform to analyze video content and identify significant changes or events.
Description: The application addresses the challenge of custom trigger creation based on content understanding of unattended recorded video. This solution is particularly useful in ecology, fire safety, and flood water level monitoring.
The typical workflow is as follows:
- The TwelveLabs Video Understanding Platform generates embeddings for the reference frame and the subsequent video clips and summarizes them.
- The application uses Groq to produce natural language descriptions of the differences.
- The application determines the significance of these differences.
- Clips that differ significantly are logged along with their timestamps and descriptions.
- The process concludes with the aggregation of all logs into a final report
The application was developed by Daniel Talero, Paul Kubie, and Todd Gardiner.
Colab notebook: hackathon.ipynb .
Integration with TwelveLabs
The code below creates a video indexing task that uploads a video to the TwelveLabs Video Understanding Platform by invoking the create
method of the task
object:
The code below invokes the create
method of the embed.task
object to create an embedding for the reference frame:
The code below creates embeddings for the subsequent frames:
The code below invokes the summarize
method of the generate
object to summarize the reference frame:
The code below summarizes each subsequent video and stores the results in a list: