panlei
2019-06-25 1980d9847c358356375d9d34752ef6a942a7bb75
改图片序列化格式jpg
4个文件已修改
14 ■■■■ 已修改文件
go.mod 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
go.sum 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
insertdata/insertDataToEs.go 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
util/upload.go 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
go.mod
@@ -17,6 +17,7 @@
    github.com/tmthrgd/go-sem v0.0.0-20160607101025-0214dbf53877 // indirect
    github.com/tmthrgd/go-shm v0.0.0-20170117044846-90afcfcd5ee9 // indirect
    github.com/tmthrgd/shm-go v0.0.0-20170130075737-7207ca97b290 // indirect
    gocv.io/x/gocv v0.20.0 // indirect
    golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed // indirect
    nanomsg.org/go-mangos v1.4.0 // indirect
)
go.sum
@@ -39,6 +39,8 @@
github.com/tmthrgd/go-shm v0.0.0-20170117044846-90afcfcd5ee9/go.mod h1:vy1jksyhzuQOMkHXMEi+X2bZ47ZeCn3QTnYdFBesABs=
github.com/tmthrgd/shm-go v0.0.0-20170130075737-7207ca97b290 h1:5zW+TRr0WH4uN72/E/XYwb1PcaYN5BIB/FUbcQ0nHr0=
github.com/tmthrgd/shm-go v0.0.0-20170130075737-7207ca97b290/go.mod h1:e9PZQr6zVezMTwj1v0j1YhGCNdS2zTCjXU9q9K+HHGk=
gocv.io/x/gocv v0.20.0 h1:2q75zQ8Zel2tB69G6qrmf/E7EdvaCs90qvkHzdSBOAg=
gocv.io/x/gocv v0.20.0/go.mod h1:vZETJRwLnl11muQ6iL3q4ju+0oJRrdmYdv5xJTH7WYA=
golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed h1:uPxWBzB3+mlnjy9W58qY1j/cjyFjutgw/Vhan2zLy/A=
golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
insertdata/insertDataToEs.go
@@ -188,7 +188,7 @@
                    }
                    i := protomsg.Image{}
                    err = proto.Unmarshal(bdata, &i)
                    resp,err = util.PostFormBufferData(weedfsUrl,i.Data,uuid.NewV4().String())
                    resp,err = util.PostFormBufferData(weedfsUrl,i,uuid.NewV4().String())
                    log.Println("已报警并上传改帧图片到服务器")
                }else {
                    isAlarm = "0"
util/upload.go
@@ -1,6 +1,7 @@
package util
import (
    "basic.com/pubsub/protomsg.git"
    "bytes"
    "encoding/json"
    "errors"
@@ -10,9 +11,13 @@
    "mime/multipart"
    "net/http"
    "time"
    "gocv.io/x/gocv"
)
// 上传图片(二进制流)
func PostFormBufferData(uri string, fileData []byte, fileName string,) (maps map[string]interface{}, err0 error) {
func PostFormBufferData(uri string, img protomsg.Image, fileName string,) (maps map[string]interface{}, err0 error) {
    imgs := gocv.NewMat()
    imgs, _ = gocv.NewMatFromBytes(int(img.Height), int(img.Width), gocv.MatTypeCV8UC3, img.Data)
    fdata,_ := gocv.IMEncode(".jpg",imgs)
    body := &bytes.Buffer{}
    writer := multipart.NewWriter(body)
    _, err := writer.CreateFormFile("file", fileName)
@@ -22,7 +27,7 @@
    boundary := writer.Boundary()
    //close_string := fmt.Sprintf("\r\n--%s--\r\n", boundary)
    close_buf := bytes.NewBufferString(fmt.Sprintf("\r\n--%s--\r\n", boundary))
    file := bytes.NewBuffer(fileData)
    file := bytes.NewBuffer(fdata)
    request_reader := io.MultiReader(body, file, close_buf)
    //_, err = io.Copy(part, file)
    //writer.WriteField(key, val)