質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

1回答

3392閲覧

unityでArUcoマーカーを検出したい。Webカメラは起動したのですがマーカーが認識されないので解決したい。

himel

総合スコア0

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2021/10/29 06:08

UnityでArUcoマーカーを検出しようとしています。
webカメラは起動できたのですが、NullReferenceException: Object reference not set to an instance of an object
webcam.Update () (at Assets/Script/webcam.cs:40)
というエラーが出てしまいマーカーが認識できません。ご教授していただけると助かります。

試したこと

RawImageを作ってスクリプトをアタッチしました。40行目のカメラフレーム更新の bool v = cam.Read(cam_frame);が指摘されていたのでカメラフレームについて調べました。

using UnityEngine; using OpenCvSharp; using System.Collections; using System.Collections.Generic; using OpenCvSharp.Aruco; using UnityEngine.UI; public class webcam : MonoBehaviour { private VideoCapture cam; public Mat cam_frame; private const PredefinedDictionaryName dictName = PredefinedDictionaryName.Dict4X4_50; private Dictionary ar_dict; private DetectorParameters detect_param; private static readonly int INPUT_SIZE = 300; private static int FPS = 30; private RawImage rawImage; WebCamTexture webCamTexture; private void Start() { this.rawImage = GetComponent<RawImage>(); this.webCamTexture = new WebCamTexture(INPUT_SIZE, INPUT_SIZE, FPS); this.rawImage.texture = this.webCamTexture; this.webCamTexture.Play(); ar_dict = CvAruco.GetPredefinedDictionary(dictName); detect_param = DetectorParameters.Create(); } void Update() { Point2f[][] maker_corners; int[] maker_ids; bool v = cam.Read(cam_frame); CvAruco.DetectMarkers(cam_frame, ar_dict, out maker_corners, out maker_ids, detect_param, out _); if (maker_ids.Length > 0) { CvAruco.DrawDetectedMarkers(cam_frame, maker_corners, maker_ids, new Scalar(0, 255, 0)); } } }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

camって変数が定義されてるだけでなにも代入されてません

投稿2021/10/29 06:11

y_waiwai

総合スコア88042

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問