如何解决Python,PySceneDetect 库:如何使用亮度方法来剪切场景?
我正在尝试使用 Python 中的 scenedetect 库从视频中剪切场景。
通常的技术是通过更改图像组合来完成的,通过 ContentDetector()
对象完成。这是他们GitHub repository上推荐的标准方式。这是他们使用的示例代码:
# Standard PySceneDetect imports:
from scenedetect import VideoManager
from scenedetect import SceneManager
# For content-aware scene detection:
from scenedetect.detectors import ContentDetector
def find_scenes(video_path,threshold=30.0):
# Create our video & scene managers,then add the detector.
video_manager = VideoManager([video_path])
scene_manager = SceneManager()
scene_manager.add_detector(
ContentDetector(threshold=threshold))
# Improve processing speed by downscaling before processing.
video_manager.set_downscale_factor()
# Start the video manager and perform the scene detection.
video_manager.start()
scene_manager.detect_scenes(frame_source=video_manager)
# Each returned scene is a tuple of the (start,end) timecode.
return scene_manager.get_scene_list()
但是,有一种基于亮度的替代技术,可以通过 ThresholdDetector()
对象完成。如果我尝试将 ThresholdDetector()
替换为 ContentDetector()
,我将不再获得场景列表……只有一个初始帧。
我做错了什么?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。