Faiz Khan
Faiz Khan
Aug 12 · 2 min read

Report 4: FINAL

Project- Poor man’s rekognition

Proposal

Github

Github For WEB APP

Mentor- Johannes Lochter

Organization- CCExtractor Development

Org admin- Carlos Fernandez

May 27 — June 1 = complete use-cases 1,2 and 3 (completed)

June 3 — June 15 = complete use-cases 4 (completed)

June 17 — June 19 =1st report (completed)

June 20 — July 3=complete use-case 5(completed)

July 4 — July 6=2nd report(completed)

July 8 — July 17 = complete use-case 6(completed)

July 18- July 31 = Web app (completed)

August 1 — August 3 = 3rd Report(completed)

August 5 — August 16 = complete use-case 7(completed)

USE CASE: 7

Scene detection:

Scene detection is used for detecting transitions between shots in a video to split it into basic temporal segments. It helps video editors to automate the process of quickly splitting videos in bulk rather than editing it frame by frame by hand.

Here I have used Algorithmia’s console for scene detection and storing the data in their storage service.

Working:

The algorithm essentially has 2 different methods for detecting scene changes.

The content method compares each frame sequentially looking for changes in content, which is useful for detecting quick cuts between scenes. This is the default method.

The threshold method compares each frame to a set black level. It is faster than the content method, but useful only when there are cuts and fades to/from black.

Follow these steps:

  1. Create an account on Algorithmia (includes 5,000 free credits each month).
  2. Go to your profile page, click the Credentials tab, and find your API key.
  3. Find a test video. You can use a public URL (prefer Vimeo over youtube), or upload one to their hosted data storage.
  4. Install the Python Algorithmia client using the command “pip install algorithmia“.
  5. Copy the sample code below, replace YOUR_API_KEY with your own key, and run it to extract the scenes from your video!
import Algorithmiaclient = Algorithmia.client("simSeYQfIQ/XeY+c4pr91rFQQqp1")input = {
"video": "data://backSpace001/gsoc/sample2.mp4",
"detector": "content",
"output_collection": "data://.algo/media/SceneDetection/temp"
}
result = client.algo("media/SceneDetection/0.1.5").pipe(input).resultprintf (result)
output

Now you can go to each of the link provided in the output to see the respective scene.

Also, you will see a time period in the output and see it manually.

Cheers..!

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade