dividing video into scenes

4 次查看(过去 30 天)
Majid Al-Sirafi
Majid Al-Sirafi 2018-7-7
hi everyone the attached file is matlab code for dividing AVI movie into scenes. unfortunately, the accuracy of this
program is low. So, is there any alternative matlab program?
Regards
Majid

回答(4 个)

Image Analyst
Image Analyst 2018-7-7
It's hard to define what a scene is. If the camera smoothly turns around 180 degrees is that a new scene?
See my attached example where I take the mean of all frames. You could examine the means and try to find abrupt changes in the means which could indicate a change in scene. Though it could also be the same scene where someone just put their hand over the lens for a short time.
  7 个评论
Image Analyst
Image Analyst 2018-7-8
Look at the plot of gray levels in the upper left axes. See how the mean abruptly jumps at certain frames? What do you think might cause that?
That jump would be caused when the image changes drastically from the prior frame, in other words, it would happen at an abrupt scene change. Does that make sense?
Now, look at the magnitude of the gray level jumps when you're at one of these jumps. It looks like it changes about 20 gray levels or more. When it changes less, the scene is just undergoing normal, slow changes in scenery (like the camera slowly panning) but not a complete scene change. Another way you could do it is to look at the binary image and count the white pixels -- the area fraction. A large area fractions (lots of differences showing up in white) would indicate a scene change. This would also indicate a scene change if the image changed but the histogram didn't, like the camera flipped upside down, or a person walked from one side of the scene to the other. You'd have to decide if that constituted a scene change or not. You could even have 2 or 3 scene change metrics and have them vote as to whether a genuine scene change occurred.
Majid Al-Sirafi
Majid Al-Sirafi 2018-7-9
thank you very much dear Image analyst for this valuable information about scene detection..
Can I contact with you about scene subject later? Actually, currently I'm working on Project related to Watermarking in Video media depending on the scene detection. your example may help me.
regard,
Majid

请先登录,再进行评论。


Majid Al-Sirafi
Majid Al-Sirafi 2018-7-7
dear image analyst do you know the value of threshold by which the changed scene is detected
  1 个评论
Image Analyst
Image Analyst 2018-7-8
No. I think you should plot the difference from frame to frame as a function of frame and look at the frames where you know for a fact that the scene has changed. Those differences should be about right, and all the other differences will probably be a lot less. So set the threshold about half way between the known scene change difference, and a typical non-changing scene difference.

请先登录,再进行评论。


Majid Al-Sirafi
Majid Al-Sirafi 2018-7-8
so, dear mage Analyst look at the your attached example, which I modified it (line 167,168). I stored the threshold values in array. So, can we detect the scenes through these values
Note:
(ali.avi) movie file cannot be attached since it not be supported.How can I attached it to run the example

Majid Al-Sirafi
Majid Al-Sirafi 2018-7-8
dear image analyst, find the attached file

产品


版本

R2014a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by