私は(freenectを使用していない)いくつかの深度イメージでgo-skeltrackライブラリを使用しようとしています。そのためには、kinect画像を自分のものに置き換えて、与えられた例を修正する必要があります。そのためには、画像を読み込み、後で[]uint16
変数に変換する必要があります。私が試したコードは次のとおりです。Golang:image.imageをuint16に変換するには
./skeltrackOfflineImageを:onDepthFrameフォーム
func onDepthFrame(depth []uint16).
を持っていますが、コンパイル中に、私は次のエラーを取得しています機能です
file, err := os.Open("./images/4.png") if err != nil { fmt.Println("4.png file not found!") os.Exit(1) } defer file.Close() fileInfo, _ := file.Stat() var size int64 = fileInfo.Size() bytes := make([]byte, size) // read file into bytes buffer := bufio.NewReader(file) _, err = buffer.Read(bytes) integerImage := binary.BigEndian.Uint16(bytes) onDepthFrame(integerImage)
。 go:155:type []としてintegerImage(type uint16)を使用できませんonDepthFrameの引数のuint16
もちろん、配列の代わりに単一の整数を生成したということです。 Go
データ型の変換の仕方について私はかなり混乱しています。助けてください!
ご協力いただきありがとうございます。 Luis
で他のイメージタイプを見てください。pngは一連のビッグエンディアンのuint16sではありません。あなたは正確に何をしようとしていますか? – JimB