mirror of
https://github.com/swdee/go-rknnlite.git
synced 2025-11-02 19:44:00 +08:00
adjusted LPRNet example to work across all rk35xx models
This commit is contained in:
@@ -11,6 +11,7 @@ import (
|
||||
"image"
|
||||
"log"
|
||||
"os"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
|
||||
@@ -19,18 +20,25 @@ func main() {
|
||||
log.SetFlags(0)
|
||||
|
||||
// read in cli flags
|
||||
modelFile := flag.String("m", "../data/lprnet-rk3588.rknn", "RKNN compiled model file")
|
||||
modelFile := flag.String("m", "../data/models/rk3588/lprnet-rk3588.rknn", "RKNN compiled model file")
|
||||
imgFile := flag.String("i", "../data/lplate.jpg", "Image file to run inference on")
|
||||
rkPlatform := flag.String("p", "rk3588", "Rockchip CPU Model number [rk3562|rk3566|rk3568|rk3576|rk3582|rk3582|rk3588]")
|
||||
flag.Parse()
|
||||
|
||||
err := rknnlite.SetCPUAffinity(rknnlite.RK3588FastCores)
|
||||
err := rknnlite.SetCPUAffinityByPlatform(*rkPlatform, rknnlite.FastCores)
|
||||
|
||||
if err != nil {
|
||||
log.Printf("Failed to set CPU Affinity: %v\n", err)
|
||||
}
|
||||
|
||||
// check if user specified model file or if default is being used. if default
|
||||
// then pick the default platform model to use.
|
||||
if f := flag.Lookup("m"); f != nil && f.Value.String() == f.DefValue && *rkPlatform != "rk3588" {
|
||||
*modelFile = strings.ReplaceAll(*modelFile, "rk3588", *rkPlatform)
|
||||
}
|
||||
|
||||
// create rknn runtime instance
|
||||
rt, err := rknnlite.NewRuntime(*modelFile, rknnlite.NPUCoreAuto)
|
||||
rt, err := rknnlite.NewRuntimeByPlatform(*rkPlatform, *modelFile)
|
||||
|
||||
if err != nil {
|
||||
log.Fatal("Error initializing RKNN runtime: ", err)
|
||||
@@ -123,7 +131,7 @@ func main() {
|
||||
func runBenchmark(rt *rknnlite.Runtime, lprnetProcesser *postprocess.LPRNet,
|
||||
mats []gocv.Mat) {
|
||||
|
||||
count := 10
|
||||
count := 100
|
||||
start := time.Now()
|
||||
|
||||
for i := 0; i < count; i++ {
|
||||
|
||||
Reference in New Issue
Block a user