Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve Detection for special cases which won't be caught by averages #6

Open
TimothyGillespie opened this issue Sep 15, 2019 · 1 comment

Comments

@TimothyGillespie
Copy link
Owner

Currently it is taking an average of brightnesses over all pixels of the frame. It works surprisingly well, but if the halfs of the screen would just swtich colors rapidly (like white and black) it wouldn't be detected. It is unlikely it will occure often, but if it can cover this as well it would be quiet nice.

One attempt I took failed, which was to divide it into different portions of the frames. This triggers false positives for example when there is a panning or scrolling shot. The average brightness of the whole screen seems to cancel this out and minimize the weight of the movement overall.

@Korosensei42
Copy link
Collaborator

You might want to have a look into the discrete Fourier Transformation. The resulting amplitude spectra.
I just gave it a quick look again and it seems like sudden changes in brightness result in diagonal white lines in the amplitude spectrum. You could then take two frames and take the variance between all pixels of the amplitude spectra of the frames. If this value exceeds some values you hopefully find in the literature or by talking to people, you could decide that the video might be epilepsy-inducing.

For a look into the discrete Fourier Transform I recommend "Computer Vision" by Lutz Priese. I can even borrow it to you, if you want to

@TimothyGillespie TimothyGillespie changed the title Improve Detection to special cases which won't be caught by averages Improve Detection for special cases which won't be caught by averages Jun 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants