You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

test_language_guided_video_summarization.py 1.8 kB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. # Copyright (c) Alibaba, Inc. and its affiliates.
  2. import os
  3. import shutil
  4. import tempfile
  5. import unittest
  6. import torch
  7. from modelscope.pipelines import pipeline
  8. from modelscope.utils.constant import Tasks
  9. from modelscope.utils.demo_utils import DemoCompatibilityCheck
  10. from modelscope.utils.test_utils import test_level
  11. class LanguageGuidedVideoSummarizationTest(unittest.TestCase,
  12. DemoCompatibilityCheck):
  13. def setUp(self) -> None:
  14. self.task = Tasks.language_guided_video_summarization
  15. self.model_id = 'damo/cv_clip-it_video-summarization_language-guided_en'
  16. @unittest.skipUnless(test_level() >= 0, 'skip test in current test level')
  17. def test_run_modelhub(self):
  18. video_path = 'data/test/videos/video_category_test_video.mp4'
  19. # input can be sentences such as sentences=['phone', 'hand'], or sentences=None
  20. sentences = None
  21. summarization_pipeline = pipeline(
  22. Tasks.language_guided_video_summarization, model=self.model_id)
  23. result = summarization_pipeline((video_path, sentences))
  24. print(f'video summarization output: \n{result}.')
  25. @unittest.skipUnless(test_level() >= 2, 'skip test in current test level')
  26. def test_run_modelhub_default_model(self):
  27. video_path = 'data/test/videos/video_category_test_video.mp4'
  28. summarization_pipeline = pipeline(
  29. Tasks.language_guided_video_summarization)
  30. result = summarization_pipeline(video_path)
  31. print(f'video summarization output:\n {result}.')
  32. @unittest.skip('demo compatibility test is only enabled on a needed-basis')
  33. def test_demo_compatibility(self):
  34. self.compatibility_check()
  35. if __name__ == '__main__':
  36. unittest.main()