Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Michael Niedermayer <michael@niedermayer.cc>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH] area changed: scdet filter
Date: Thu, 30 May 2024 23:31:32 +0200
Message-ID: <20240530213132.GE2821752@pb2> (raw)
In-Reply-To: <000c01daa54d$8a0eedf0$9e2cc9d0$@gmail.com>


[-- Attachment #1.1: Type: text/plain, Size: 4542 bytes --]

On Mon, May 13, 2024 at 06:52:19PM +0300, radu.taraibuta@gmail.com wrote:
> Previous observations:
> 
>  - Inconsistent code style with other filters. (Mostly using AVFilterLink*
> link instead of AVFilterLink *link).
> I hope it's fine now.	
> 
>  - Unrelated changes, please split trivial unrelated changes into separate
> patches.
> Removed trivial changes from this patch.
> 
>  - Can't tables be generated at .init/.config_props time? No point in
> storing them into binary.
> Done.
> 
>  - Adding extra delay is not backward compatible change, it should be
> implemented properly by adding option for users to select mode: next & prev
> frame or just next or prev frame.
> Added legacy option to the mode parameter.
> 
>  - Could split frame clone change into earlier separate patch.
> Cannot be done. It's either frame clone or 1 frame delay.
> 
>  - Where are results of improvements with accuracy so it can be confirmed?
> Here are my test results with manual labeling of scene changes:
> 2379	Full length movie
> 
> Method	Threshold	TP	FP	FN		Precision
> Recall	F
> Cubic	7	2357	423	22		0.847841727	0.990752417
> 0.913742973
> Cubic	10	2297	200	82		0.919903885	0.965531736
> 0.94216571
> Cubic	12	2217	146	162		0.938214135	0.931904161
> 0.935048503
> Cubic	15	2049	101	330		0.953023256	0.861286255
> 0.904835505
> Linear	2.8	2357	1060	22		0.689786362	0.990752417
> 0.813319531
> Linear	8	2099	236	280		0.898929336	0.882303489
> 0.890538821
> Linear	10	1886	173	493		0.91597863	0.792770071
> 0.849932402
> Legacy	5	2235	1260	144		0.639484979	0.939470366
> 0.760980592
> Legacy	8	1998	414	381		0.828358209	0.839848676
> 0.83406387
> Legacy	10	1743	193	636		0.900309917	0.732660782
> 0.80787949
> 								
> 15	HDR10Plus_PB_EAC3JOC
> https://mega.nz/file/nehDka6Z#C5_OPbSZkONdOp1jRmc09C9-viDc3zMj8ZHruHcWKyA
> 
> Method	Threshold	TP	FP	FN		Precision
> Recall	F
> Cubic	10	15	0	0		1	1	1
> Linear	5	13	1	2		0.928571429	0.866666667
> 0.896551724
> Legacy	5	12	2	3		0.857142857	0.8
> 0.827586207
> 								
> 21	(HDR HEVC 10-bit BT.2020 24fps) Exodus Sample
> https://mega.nz/file/Sfw1hDpK#ErxCOpQDVjcI1gq6ZbX3vIfdtXZompkFe0jq47EhR2o
> 
> Method	Threshold	TP	FP	FN		Precision
> Recall	F
> Cubic	10	21	0	0		1	1	1
> Linear	4	20	0	1		1	0.952380952
> 0.975609756
> Legacy	4	19	0	2		1	0.904761905	0.95
> 								
> 94	Bieber Grammys
> https://mega.nz/#!c9dhAaKA!MG5Yi-MJNATE2_KqcnNJZCRKtTWvdjJP1NwG8Ggdw3E
> 
> Method	Threshold	TP	FP	FN		Precision
> Recall	F
> Cubic	15	91	23	3		0.798245614	0.968085106
> 0.875
> Cubic	18	85	9	9		0.904255319	0.904255319
> 0.904255319
> Linear	7	79	49	15		0.6171875	0.840425532
> 0.711711712
> Linear	8	74	28	20		0.725490196	0.787234043
> 0.755102041
> Legacy	7	74	40	20		0.649122807	0.787234043
> 0.711538462
> Legacy	8	71	26	23		0.731958763	0.755319149
> 0.743455497
> 
> 
> Improve scene detection accuracy by comparing frame with both previous and
> next frame (creates one frame delay).
> Add new mode parameter and new method to compute the frame difference using
> cubic square to increase the weight of small changes and new mean formula.
> This improves accuracy significantly. Slightly improve performance by not
> using frame clone.
> Add legacy mode for backward compatibility.
> 
> Signed-off-by: raduct <radu.taraibuta@gmail.com>
> ---
>  doc/filters.texi            |  16 ++++
>  libavfilter/scene_sad.c     | 151 ++++++++++++++++++++++++++++++++++
>  libavfilter/scene_sad.h     |   6 ++
>  libavfilter/vf_scdet.c      | 156 +++++++++++++++++++++++++-----------
>  tests/fate/filter-video.mak |   3 +
>  5 files changed, 284 insertions(+), 48 deletions(-)
> 
> diff --git a/doc/filters.texi b/doc/filters.texi
> index bfa8ccec8b..53814e003b 100644
> --- a/doc/filters.texi
> +++ b/doc/filters.texi
> @@ -21797,6 +21797,22 @@ Default value is @code{10.}.
>  @item sc_pass, s
>  Set the flag to pass scene change frames to the next filter. Default value
> is @code{0}

The patch is corrupted by linebreaks:

Applying: area changed: scdet filter
error: corrupt patch at line 16
Patch failed at 0001 area changed: scdet filter

please check the linebreak settings or attach the patch or use git send-email

thx

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Homeopathy is like voting while filling the ballot out with transparent ink.
Sometimes the outcome one wanted occurs. Rarely its worse than filling out
a ballot properly.

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

[-- Attachment #2: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

  parent reply	other threads:[~2024-05-30 21:31 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-13 15:52 radu.taraibuta
2024-05-19 16:05 ` radu.taraibuta
2024-05-28  7:51   ` radu.taraibuta
2024-05-28 13:16     ` Paul B Mahol
2024-05-30 21:31 ` Michael Niedermayer [this message]
2024-06-02 20:17   ` radu.taraibuta
2024-06-03 22:42     ` Michael Niedermayer
2024-06-11  7:07       ` [FFmpeg-devel] [PATCH v2] " radu.taraibuta
2024-06-11 17:18         ` Michael Niedermayer
2024-06-12 19:51           ` [FFmpeg-devel] [PATCH v3] " radu.taraibuta
2024-06-12 23:52             ` Michael Niedermayer
2024-06-13  7:28               ` radu.taraibuta
2024-06-13  9:52             ` Tobias Rapp
2024-06-13 11:21               ` radu.taraibuta
2024-06-13 13:18                 ` Tobias Rapp
2024-06-13 13:49                   ` radu.taraibuta
2024-06-13 18:16                     ` [FFmpeg-devel] [PATCH v4] " radu.taraibuta
2024-06-14  7:22                       ` Tobias Rapp
  -- strict thread matches above, loose matches on Subject: below --
2024-05-12 11:05 [FFmpeg-devel] [PATCH] " radu.taraibuta
2024-05-12 11:34 ` Paul B Mahol
2024-05-12 11:04 raduct

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240530213132.GE2821752@pb2 \
    --to=michael@niedermayer.cc \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git