微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用ffmpeg阻止提取帧中的伪像

如何解决使用ffmpeg阻止提取帧中的伪像

我正在使用以下方法从视频中提取单个帧:

ffmpeg -ss 60 -i video.mov -vframes 1 a.jpg

产生以下内容

image showing the artifacts

我尝试操纵pix_fmtq:v 2的质量无济于事。请注意,视频中的其他位置(即不是60秒,而是之前或之后),看不到任何此类伪像。

有所帮助的一件事是平均多个帧(从here改用15帧):

-vf tmix=frames=15:weights="1 1 1 1 1 1 1 1 1 1 1 1 1 1 1",select='not(mod(n\,15))'

看起来更好:

enter image description here

但是仍然需要花费整整15帧的时间,您仍然可以看到这些工件。

是否有更好的方法来处理这种噪音?

提前谢谢!

这是该视频的统计信息:

ffmpeg version n4.3.1 copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 10.1.0 (GCC)
  configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-avisynth --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-nvdec --enable-nvenc --enable-omx --enable-shared --enable-version3
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
Input #0,mov,mp4,m4a,3gp,3g2,mj2,from 'Downloads/20191130_1h_ICE_2.6m_B9.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 0
    compatible_brands: qt  
    creation_time   : 2020-03-29T09:24:30.000000Z
  Duration: 00:07:04.83,start: 0.000000,bitrate: 9891 kb/s
    Stream #0:0(und): Audio: aac (mp4a / 0x6134706D),48000 Hz,5.1,fltp,260 kb/s (default)
    Metadata:
      creation_time   : 2020-03-29T09:24:30.000000Z
      handler_name    : Core Media Audio
    Stream #0:1(und): Video: h264 (High) (avc1 / 0x31637661),yuv420p(tv,bt709),1920x1080 [SAR 1:1 DAR 16:9],9632 kb/s,24.38 fps,25 tbr,90k tbn,180k tbc (default)
    Metadata:
      creation_time   : 2020-03-29T09:24:30.000000Z
      handler_name    : Core Media Video
      encoder         : H.264
File 'a.jpg' already exists. Overwrite? [y/N] y
Stream mapping:
  Stream #0:1 -> #0:0 (h264 (native) -> mjpeg (native))
Press [q] to stop,[?] for help
[swscaler @ 0x55a5393a9a40] deprecated pixel format used,make sure you did set range correctly
Output #0,image2,to 'a.jpg':
  Metadata:
    major_brand     : qt  
    minor_version   : 0
    compatible_brands: qt  
    encoder         : Lavf58.45.100
    Stream #0:0(und): Video: mjpeg,yuvj420p(pc),q=2-31,200 kb/s,25 fps,25 tbn,25 tbc (default)
    Metadata:
      creation_time   : 2020-03-29T09:24:30.000000Z
      handler_name    : Core Media Video
      encoder         : Lavc58.91.100 mjpeg
    Side data:
      cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
frame=    1 fps=0.0 q=9.3 Lsize=N/A time=00:00:00.04 bitrate=N/A dup=1 drop=1 speed=0.0984x    
video:207kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unkNown

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。