未验证 提交 107f2336 编写于 作者: T Tsukasa Sugiura 提交者: GitHub

Merge pull request #19484 from UnaNancyOwen:fix_highlevelapi

* [dnn] fix high level api for python

* [dnn] add test_textdetection_model_db

* [dnn] fix textdetection test only check type and shape
上级 0677f3e2
......@@ -1216,7 +1216,7 @@ CV__DNN_INLINE_NS_BEGIN
* KeypointsModel creates net from file with trained weights and config,
* sets preprocessing input, runs forward pass and returns the x and y coordinates of each detected keypoint
*/
class CV_EXPORTS_W KeypointsModel: public Model
class CV_EXPORTS_W_SIMPLE KeypointsModel: public Model
{
public:
/**
......@@ -1248,7 +1248,7 @@ CV__DNN_INLINE_NS_BEGIN
* SegmentationModel creates net from file with trained weights and config,
* sets preprocessing input, runs forward pass and returns the class prediction for each pixel.
*/
class CV_EXPORTS_W SegmentationModel: public Model
class CV_EXPORTS_W_SIMPLE SegmentationModel: public Model
{
public:
/**
......@@ -1406,7 +1406,7 @@ public:
/** @brief Base class for text detection networks
*/
class CV_EXPORTS_W TextDetectionModel : public Model
class CV_EXPORTS_W_SIMPLE TextDetectionModel : public Model
{
protected:
CV_DEPRECATED_EXTERNAL // avoid using in C++ code, will be moved to "protected" (need to fix bindings first)
......
......@@ -197,6 +197,25 @@ class dnn_test(NewOpenCVTests):
normAssert(self, out, ref)
def test_textdetection_model(self):
img_path = self.find_dnn_file("dnn/text_det_test1.png")
weights = self.find_dnn_file("dnn/onnx/models/DB_TD500_resnet50.onnx", required=False)
if weights is None:
raise unittest.SkipTest("Missing DNN test files (onnx/models/DB_TD500_resnet50.onnx). Verify OPENCV_DNN_TEST_DATA_PATH configuration parameter.")
frame = cv.imread(img_path)
scale = 1.0 / 255.0
size = (736, 736)
mean = (122.67891434, 116.66876762, 104.00698793)
model = cv.dnn_TextDetectionModel_DB(weights)
model.setInputParams(scale, size, mean)
out, _ = model.detect(frame)
self.assertTrue(type(out) == list)
self.assertTrue(np.array(out).shape == (2, 4, 2))
def test_face_detection(self):
proto = self.find_dnn_file('dnn/opencv_face_detector.prototxt')
model = self.find_dnn_file('dnn/opencv_face_detector.caffemodel', required=False)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册