summaryrefslogtreecommitdiffstats
path: root/Godeps/_workspace/src/code.google.com/p/graphics-go/graphics/detect/opencv_parser_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'Godeps/_workspace/src/code.google.com/p/graphics-go/graphics/detect/opencv_parser_test.go')
-rw-r--r--Godeps/_workspace/src/code.google.com/p/graphics-go/graphics/detect/opencv_parser_test.go75
1 files changed, 75 insertions, 0 deletions
diff --git a/Godeps/_workspace/src/code.google.com/p/graphics-go/graphics/detect/opencv_parser_test.go b/Godeps/_workspace/src/code.google.com/p/graphics-go/graphics/detect/opencv_parser_test.go
new file mode 100644
index 000000000..343390499
--- /dev/null
+++ b/Godeps/_workspace/src/code.google.com/p/graphics-go/graphics/detect/opencv_parser_test.go
@@ -0,0 +1,75 @@
+// Copyright 2011 The Graphics-Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package detect
+
+import (
+ "image"
+ "os"
+ "reflect"
+ "testing"
+)
+
+var (
+ classifier0 = Classifier{
+ Feature: []Feature{
+ Feature{Rect: image.Rect(0, 0, 3, 4), Weight: -1},
+ Feature{Rect: image.Rect(3, 4, 5, 6), Weight: 3.1},
+ },
+ Threshold: 0.03,
+ Left: 0.01,
+ Right: 0.8,
+ }
+ classifier1 = Classifier{
+ Feature: []Feature{
+ Feature{Rect: image.Rect(3, 7, 17, 11), Weight: -3.2},
+ Feature{Rect: image.Rect(3, 9, 17, 11), Weight: 2.},
+ },
+ Threshold: 0.11,
+ Left: 0.03,
+ Right: 0.83,
+ }
+ classifier2 = Classifier{
+ Feature: []Feature{
+ Feature{Rect: image.Rect(1, 1, 3, 3), Weight: -1.},
+ Feature{Rect: image.Rect(3, 3, 5, 5), Weight: 2.5},
+ },
+ Threshold: 0.07,
+ Left: 0.2,
+ Right: 0.4,
+ }
+ cascade = Cascade{
+ Stage: []CascadeStage{
+ CascadeStage{
+ Classifier: []Classifier{classifier0, classifier1},
+ Threshold: 0.82,
+ },
+ CascadeStage{
+ Classifier: []Classifier{classifier2},
+ Threshold: 0.22,
+ },
+ },
+ Size: image.Pt(20, 20),
+ }
+)
+
+func TestParseOpenCV(t *testing.T) {
+ file, err := os.Open("../../testdata/opencv.xml")
+ if err != nil {
+ t.Fatal(err)
+ }
+ defer file.Close()
+
+ cascadeFile, name, err := ParseOpenCV(file)
+ if err != nil {
+ t.Fatal(err)
+ }
+ if name != "name_of_cascade" {
+ t.Fatalf("name: got %s want name_of_cascade", name)
+ }
+
+ if !reflect.DeepEqual(cascade, *cascadeFile) {
+ t.Errorf("got\n %v want\n %v", *cascadeFile, cascade)
+ }
+}