67 lines
1.4 KiB
Go
67 lines
1.4 KiB
Go
package main
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"sentinel/pkg/device"
|
|
"sentinel/pkg/log"
|
|
"sentinel/pkg/model"
|
|
api "sentinel/pkg/net"
|
|
"sentinel/pkg/storage"
|
|
)
|
|
|
|
func test() {
|
|
// 0. 从海康SDK获取图片以及信息
|
|
record := loadData()
|
|
// 1. 上传图片到OSS
|
|
uploadFile(record.LicensePlateImage, record.VehicleImage)
|
|
// 2. 调用分析请求
|
|
analytics(record)
|
|
}
|
|
|
|
func loadData() model.Record {
|
|
return model.Record{
|
|
DeviceId: device.GetDeviceID(),
|
|
LicensePlate: "晋A-888888",
|
|
LicensePlateImage: "licensePlateImage_test1.jpg",
|
|
VehicleType: "大型货车",
|
|
VehicleImage: "vehicleImage_test1.jpg",
|
|
}
|
|
}
|
|
|
|
func uploadFile(licensePlateImage string, vehicleImage string) {
|
|
if err := storage.Init(); err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
// todo 需要压缩图片至1~3MB
|
|
size, err := storage.UploadFile(
|
|
context.Background(),
|
|
"sentinel",
|
|
"license_plate/"+licensePlateImage,
|
|
"tmp/"+licensePlateImage,
|
|
"image/jpeg",
|
|
)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
log.Println(fmt.Sprintf("车牌照已上传完毕, 大小: = %d KB", size/1024))
|
|
size, err = storage.UploadFile(
|
|
context.Background(),
|
|
"sentinel",
|
|
"vehicle_image/"+vehicleImage,
|
|
"tmp/"+vehicleImage,
|
|
"image/jpeg",
|
|
)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
log.Println(fmt.Sprintf("车身照已上传完毕, 大小: = %d KB", size/1024))
|
|
}
|
|
|
|
func analytics(record model.Record) {
|
|
err := api.Analytics(record)
|
|
if err != nil {
|
|
return
|
|
}
|
|
}
|