分景后配准
This commit is contained in:
36
pkg/producer/scene_register.go
Normal file
36
pkg/producer/scene_register.go
Normal file
@@ -0,0 +1,36 @@
|
||||
package producer
|
||||
|
||||
import (
|
||||
"github.com/sirupsen/logrus"
|
||||
"gocv.io/x/gocv"
|
||||
)
|
||||
|
||||
// 分景后再做配准
|
||||
func (r *ImgProc) RegisterScenes(pan, mss *Scene) error {
|
||||
proc := NewImgProc(DownSampled)
|
||||
proc.PanImage = pan.Mat[0]
|
||||
proc.MssImages = [4]gocv.Mat{mss.Mat[0], mss.Mat[1], mss.Mat[2], mss.Mat[3]}
|
||||
proc.MssHeight = mss.Height
|
||||
proc.MssWidth = mss.Width
|
||||
proc.PanHeight = pan.Height
|
||||
proc.PanWidth = pan.Width
|
||||
|
||||
err := proc.DoPhaseCorrelation(false)
|
||||
if err != nil {
|
||||
logrus.Error("register scene failed: ", err)
|
||||
return err
|
||||
}
|
||||
|
||||
pan.Height = proc.PanHeight
|
||||
pan.Width = proc.PanWidth
|
||||
pan.Mat[0] = proc.PanImage
|
||||
|
||||
mss.Height = proc.MssHeight
|
||||
mss.Width = proc.MssWidth
|
||||
for i := 0; i < 4; i++ {
|
||||
mss.Mat[i].Close()
|
||||
mss.Mat[i] = proc.registeredMssImages[i]
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user