Skip to content

Commit cfd2f2e

Browse files
committed
fix
1 parent 4bb9f18 commit cfd2f2e

File tree

9 files changed

+37
-23
lines changed

9 files changed

+37
-23
lines changed

packages/dartcv/lib/src/dnn/dnn.dart

+2-1
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,9 @@ class Layer extends CvStruct<cvg.Layer> {
7878
final cName = name.toNativeUtf8().cast<ffi.Char>();
7979
final p = calloc<ffi.Int>();
8080
cvRun(() => cdnn.cv_dnn_Layer_outputNameToIndex(ref, cName, p));
81+
final rval = p.value;
8182
calloc.free(p);
82-
return p.value;
83+
return rval;
8384
}
8485

8586
@override

packages/dartcv/lib/src/dnn/dnn_async.dart

+12-7
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,17 @@ extension NetAsync on Net {
2828
final cConfig = config.toNativeUtf8().cast<ffi.Char>();
2929
final cFramework = framework.toNativeUtf8().cast<ffi.Char>();
3030
final p = calloc<cvg.Net>();
31-
return cvRunAsync0((callback) => cdnn.cv_dnn_Net_readNet(cPath, cConfig, cFramework, p, callback), (c) {
32-
calloc.free(cPath);
33-
calloc.free(cConfig);
34-
calloc.free(cFramework);
35-
final net = Net.fromPointer(p);
36-
return c.complete(net);
37-
});
31+
final rval = cvRunAsync0<Net>(
32+
(callback) => cdnn.cv_dnn_Net_readNet(cPath, cConfig, cFramework, p, callback),
33+
(c) {
34+
final net = Net.fromPointer(p);
35+
return c.complete(net);
36+
},
37+
);
38+
calloc.free(cPath);
39+
calloc.free(cConfig);
40+
calloc.free(cFramework);
41+
return rval;
3842
}
3943

4044
static Future<Net> fromBytesAsync(
@@ -163,6 +167,7 @@ extension NetAsync on Net {
163167
(callback) => cdnn.cv_dnn_Net_setInput(ref, blob.ref, cname.cast(), scalefactor, mean!.ref, callback),
164168
(c) {
165169
calloc.free(cname);
170+
c.complete();
166171
},
167172
);
168173
}

packages/dartcv/test/contrib/ximgproc_test.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ void main() async {
9090
final src = cv.imread("test/images/circles.jpg");
9191
final rf = cv.RFFeatureGetter.empty();
9292
final detector =
93-
cv.StructuredEdgeDetection.create("test/models/structure_edge_model.yml.gz", howToGetFeatures: rf);
93+
cv.StructuredEdgeDetection.create("test/models/structure_edge_model.yml", howToGetFeatures: rf);
9494

9595
// note the alpha, improper data of src will cause crash internally in opencv
9696
// without friendly exception

packages/dartcv/test/dnn/dnn_async_test.dart

+10-7
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,9 @@ Future<bool> checkCaffeNetAsync(cv.Net net) async {
4343
expect((minLoc.x, minLoc.y), (955, 0));
4444
expect((maxLoc.x, maxLoc.y), (812, 0));
4545

46-
final perf = await net.getPerfProfileAsync();
46+
final (perf, layerTimes) = await net.getPerfProfileAsync();
4747
expect(perf, greaterThan(0));
48+
expect(layerTimes, isNotEmpty);
4849

4950
return true;
5051
}
@@ -74,8 +75,9 @@ Future<bool> checkTensorflowAsync(cv.Net net) async {
7475
expect((minLoc.x, minLoc.y), (481, 0));
7576
expect((maxLoc.x, maxLoc.y), (234, 0));
7677

77-
final perf = await net.getPerfProfileAsync();
78+
final (perf, layerTimes) = await net.getPerfProfileAsync();
7879
expect(perf, greaterThan(0));
80+
expect(layerTimes, isNotEmpty);
7981

8082
return true;
8183
}
@@ -105,8 +107,9 @@ Future<bool> checkOnnxAsync(cv.Net net) async {
105107
expect((minLoc.x, minLoc.y), (955, 0));
106108
expect((maxLoc.x, maxLoc.y), (812, 0));
107109

108-
final perf = await net.getPerfProfileAsync();
110+
final (perf, layerTimes) = await net.getPerfProfileAsync();
109111
expect(perf, greaterThan(0));
112+
expect(layerTimes, isNotEmpty);
110113

111114
return true;
112115
}
@@ -143,9 +146,9 @@ void main() async {
143146
config: "test/models/bvlc_googlenet.prototxt",
144147
);
145148
await checkCaffeNetAsync(model);
146-
expect(model.dump(), isNotEmpty);
149+
// expect(model.dump(), isNotEmpty);
147150

148-
model.dispose();
151+
// model.dispose();
149152
});
150153

151154
test('cv.NetAsync.fromBytesAsync', () async {
@@ -226,7 +229,7 @@ void main() async {
226229

227230
final blob = await cv.blobFromImagesAsync(imgs);
228231
expect(blob.isEmpty, false);
229-
expect(cv.getBlobSize(blob), cv.Scalar(2, 3, 480, 512));
232+
expect(cv.getBlobSize(blob), [2, 3, 480, 512]);
230233

231234
final images = await cv.imagesFromBlobAsync(blob);
232235
expect(images.length, 2);
@@ -246,7 +249,7 @@ void main() async {
246249

247250
final blob = await cv.blobFromImagesAsync(imgs);
248251
expect(blob.isEmpty, false);
249-
expect(cv.getBlobSize(blob), cv.Scalar(2, 1, 480, 512));
252+
expect(cv.getBlobSize(blob), [2, 1, 480, 512]);
250253
});
251254

252255
test('cv.NMSBoxesAsync', () async {

packages/dartcv/test/dnn/dnn_test.dart

+6-3
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,9 @@ bool checkCaffeNet(cv.Net net) {
4545
expect((minLoc.x, minLoc.y), (955, 0));
4646
expect((maxLoc.x, maxLoc.y), (812, 0));
4747

48-
final (perf, _) = net.getPerfProfile();
48+
final (perf, layerTimes) = net.getPerfProfile();
4949
expect(perf, greaterThan(0));
50+
expect(layerTimes, isNotEmpty);
5051

5152
return true;
5253
}
@@ -76,8 +77,9 @@ bool checkTensorflow(cv.Net net) {
7677
expect((minLoc.x, minLoc.y), (481, 0));
7778
expect((maxLoc.x, maxLoc.y), (234, 0));
7879

79-
final (perf, _) = net.getPerfProfile();
80+
final (perf, layerTimes) = net.getPerfProfile();
8081
expect(perf, greaterThan(0));
82+
expect(layerTimes, isNotEmpty);
8183

8284
return true;
8385
}
@@ -112,8 +114,9 @@ bool checkOnnx(cv.Net net) {
112114
// final probMatAsync = probAsync.get();
113115
// expect(probMatAsync.isEmpty, false);
114116

115-
final (perf, _) = net.getPerfProfile();
117+
final (perf, layerTimes) = net.getPerfProfile();
116118
expect(perf, greaterThan(0));
119+
expect(layerTimes, isNotEmpty);
117120
return true;
118121
}
119122

packages/opencv_core/lib/opencv.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@
55
/// OpenCV bindings for Flutter
66
library cv;
77

8-
export 'package:dartcv/dartcv.dart';
8+
export 'package:dartcv4/dartcv.dart';

packages/opencv_core/pubspec.yaml

+2-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ environment:
1515
dependencies:
1616
flutter:
1717
sdk: flutter
18-
dartcv: ^0.0.1
18+
dartcv4:
19+
path: ../dartcv
1920

2021
dev_dependencies:
2122
test: ^1.25.2

packages/opencv_dart/lib/opencv.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@
55
/// OpenCV bindings for Flutter
66
library cv;
77

8-
export 'package:dartcv/dartcv.dart';
8+
export 'package:dartcv4/dartcv.dart';

packages/opencv_dart/pubspec.yaml

+2-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ environment:
1717
dependencies:
1818
flutter:
1919
sdk: flutter
20-
dartcv: 0.0.1
20+
dartcv4:
21+
path: ../dartcv
2122

2223
dev_dependencies:
2324
test: ^1.25.2

0 commit comments

Comments
 (0)