From 6d0a2b62a05d146440b425598201d52a56b8c911 Mon Sep 17 00:00:00 2001 From: liuxiaolong <736321739@qq.com> Date: 星期二, 02 七月 2019 13:16:57 +0800 Subject: [PATCH] use camera and localconfig cache --- util/simpleCV.go | 47 +++++++++++++++++++++++++++-------------------- 1 files changed, 27 insertions(+), 20 deletions(-) diff --git a/util/simpleCV.go b/util/simpleCV.go index 74a5f21..53b2d03 100644 --- a/util/simpleCV.go +++ b/util/simpleCV.go @@ -1,11 +1,13 @@ package util import ( + "basic.com/pubsub/protomsg.git" "bufio" "bytes" "encoding/json" "errors" "fmt" + "gocv.io/x/gocv" "image" "image/color" "io" @@ -14,8 +16,6 @@ "net/http" "os" "time" - - "gocv.io/x/gocv" ) func CvRTSP() { @@ -159,27 +159,34 @@ } } -func DrawPolygonOnImage()(maps map[string]interface{}, err0 error){ +func DrawPolygonOnImage(img protomsg.Image)(maps map[string]interface{}, err0 error){ // draw the rook - //rook := gocv.NewMatWithSize(w, w, gocv.MatTypeCV8UC3) - //imgs := gocv.NewMat() - ddd, err := RetrieveROM("/home/user/workspace/ruleprocess/util/105.jpg") - if err != nil { - fmt.Println("瑙g爜鏈夎",err) - } - bbb := bytes.NewBuffer(ddd) // 蹇呴』鍔犱竴涓猙uffer 涓嶇劧娌℃湁read鏂规硶灏变細鎶ラ敊 - rook, _ := gocv.NewMatFromBytes(500, 500, gocv.MatTypeCV8UC3, bbb.Bytes()) + //ddd, err := RetrieveROM("/home/user/workspace/ruleprocess/util/105.jpg") + //if err != nil { + // fmt.Println("瑙g爜鏈夎",err) + //} + //bbb := bytes.NewBuffer(ddd) // 蹇呴』鍔犱竴涓猙uffer 涓嶇劧娌℃湁read鏂规硶灏变細鎶ラ敊 + //rook,_ := gocv.IMDecode(bbb.Bytes(),gocv.IMReadColor) + rook, _ := gocv.NewMatFromBytes(int(img.Height), int(img.Width), gocv.MatTypeCV8UC3, img.Data) + //rook := gocv.IMRead("/home/user/workspace/ruleprocess/util/105.jpg",gocv.IMReadColor) defer rook.Close() + green := color.RGBA{0, 255, 0, 0} - points := [][]image.Point{ - { - image.Pt(100., 100), - image.Pt(100., 400), - image.Pt(400, 400), - image.Pt(400, 100), - }, - } - gocv.FillPoly(&rook, points, green) + //points := [][]image.Point{ + // { + // image.Pt(100., 100), + // image.Pt(100., 400), + // image.Pt(400, 400), + // image.Pt(400, 100), + // }, + //} + //gocv.FillPoly(&rook, points, green) + gocv.Line(&rook, image.Pt(100, 100), image.Pt(100, 800), green, 2) + gocv.Line(&rook, image.Pt(100, 800), image.Pt(800, 800), green, 2) + gocv.Line(&rook, image.Pt(800, 800), image.Pt(800, 100), green, 2) + gocv.Line(&rook, image.Pt(800, 100), image.Pt(100, 100), green, 2) + + //return nil,nil // 涓婁紶 fdata,_ := gocv.IMEncode(".jpg",rook) body := &bytes.Buffer{} -- Gitblit v1.8.0