| | |
| | | |
| | | import ( |
| | | "basic.com/pubsub/protomsg.git" |
| | | "basic.com/fileServer/WeedFSClient.git" |
| | | "bytes" |
| | | "encoding/base64" |
| | | "errors" |
| | |
| | | faceArr, err, pI := service.GetFaceFeaFromSdk(fileBytes, time.Second*5) |
| | | if err ==nil && len(faceArr) >0 { |
| | | var faceBase64= "" |
| | | var field = "" |
| | | var rcFace *protomsg.Rect |
| | | for _,r := range faceArr { |
| | | rcFace = r.Pos.RcFace |
| | |
| | | } |
| | | //根据人脸坐标扣出人脸小图 |
| | | cutFaceImgData := util.SubImg(*pI, int(rcFace.Left), int(rcFace.Top), int(rcFace.Right), int(rcFace.Bottom)) |
| | | fileInfo, e := esutil.PostFormData(weedfsUri, "测试人脸切图", "file", cutFaceImgData) |
| | | if e != nil { |
| | | fmt.Println(e.Error()) |
| | | |
| | | weedFilePath, e := WeedFSClient.UploadFile(weedfsUri, "testCutFace", cutFaceImgData) |
| | | if e !=nil{ |
| | | util.ResponseFormat(c,code.ComError,"文件上传失败") |
| | | } else { |
| | | field = fileInfo[picUrlField].(string) // 文件路径 |
| | | util.ResponseFormat(c,code.Success,weedFilePath + ";" + faceBase64) |
| | | } |
| | | if strings.Contains(field,"/"){ |
| | | idx := strings.Index(field, "/") |
| | | field = field[idx+1:] |
| | | } |
| | | fmt.Println("field:",field) |
| | | util.ResponseFormat(c,code.Success,field + ";" + faceBase64) |
| | | } else { |
| | | util.ResponseFormat(c,code.ComError,"未提取到人脸") |
| | | } |
| | |
| | | package service |
| | | |
| | | import ( |
| | | "bytes" |
| | | "encoding/json" |
| | | "errors" |
| | | "flag" |
| | | "fmt" |
| | | "gocv.io/x/gocv" |
| | | "io" |
| | | "log" |
| | | "mime/multipart" |
| | | "net/http" |
| | | "os" |
| | | "os/exec" |
| | | "path/filepath" |
| | | "strconv" |
| | | "time" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | | |
| | | "basic.com/dbapi.git" |
| | | "basic.com/valib/capture.git" |
| | | ) |
| | | |
| | | /*以下属于旧版本地摄像机获取截图(国标摄像机底图无法刷新) |
| | | func PostFormBufferData(uri string, filepath string, fileName string) (maps map[string]interface{}, err0 error) { |
| | | // 要指定转byte的格式 |
| | | picMat := gocv.IMRead(filepath, gocv.IMReadColor) |
| | |
| | | return "", errors.New("update filelocal to camera fail") |
| | | } |
| | | return filename, nil |
| | | } |
| | | }*/ |
| | | |
| | | //调用统一接口,刷新底图(集成国标底图刷新) |
| | | func UpdateCapture(cid string) (fileName string,err error){ |