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_table_recognition.py 1.5 kB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # Copyright (c) Alibaba, Inc. and its affiliates.
  2. import unittest
  3. from modelscope.pipelines import pipeline
  4. from modelscope.pipelines.base import Pipeline
  5. from modelscope.utils.constant import Tasks
  6. from modelscope.utils.demo_utils import DemoCompatibilityCheck
  7. from modelscope.utils.test_utils import test_level
  8. class TableRecognitionTest(unittest.TestCase, DemoCompatibilityCheck):
  9. def setUp(self) -> None:
  10. self.model_id = 'damo/cv_dla34_table-structure-recognition_cycle-centernet'
  11. self.test_image = 'data/test/images/table_recognition.jpg'
  12. self.task = Tasks.table_recognition
  13. def pipeline_inference(self, pipe: Pipeline, input_location: str):
  14. result = pipe(input_location)
  15. print('table recognition results: ')
  16. print(result)
  17. @unittest.skipUnless(test_level() >= 0, 'skip test in current test level')
  18. def test_run_with_model_from_modelhub(self):
  19. table_recognition = pipeline(
  20. Tasks.table_recognition, model=self.model_id)
  21. self.pipeline_inference(table_recognition, self.test_image)
  22. @unittest.skipUnless(test_level() >= 2, 'skip test in current test level')
  23. def test_run_modelhub_default_model(self):
  24. table_recognition = pipeline(Tasks.table_recognition)
  25. self.pipeline_inference(table_recognition, self.test_image)
  26. @unittest.skip('demo compatibility test is only enabled on a needed-basis')
  27. def test_demo_compatibility(self):
  28. self.compatibility_check()
  29. if __name__ == '__main__':
  30. unittest.main()