問題タブ [apple-vision]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - CGRect swift への画像のオーバーレイ
Apple がオブジェクト検出を行うために提供する次のサンプル アプリを使用しています。
https://developer.apple.com/documentation/vision/tracking_multiple_objects_or_rectangles_in_video
ビデオの緑色の長方形の上に顔の画像を貼り付けようとしています。(動画ダウンロードリンク: https://drive.google.com/file/d/1aw5L-6uBMTxeuq378Y98dZcTh6N_Y2Pf/view?usp=sharing )
これまでのところ、ビデオから緑色の長方形を一貫して検出できますが、画像を重ねようとすると、フレームがビューに表示されません。
これが私がこれまでに試したことです:
でTrackingImageView.swift
、 というインスタンス変数を追加し、関数faceImage
の最後に次のコードを追加して、画面に追加しようとしました。draw
次に、TrackingViewController
という関数にfunc displayFrame(_ frame: CVPixelBuffer?, withAffineTransform transform: CGAffineTransform, rects: [TrackedPolyRect]?)
、次の行を追加しました。
更新、これが私が試した別のアプローチです:
これは、ドキュメントに記載されていることです:Use the observation’s boundingBox to determine its location, so you can update your app or UI with the tracked object’s new location. Also use it to seed the next round of tracking.
の関数func performTracking(type: TrackedObjectType)
にVisionTrackerProcessor
、次のように追加しました。
そして、TrackingViewController
これを追加しました:
そしてfaceImage
、これは次のとおりです。
画像を配置する長方形の CGPoints を印刷すると、次の出力が得られます。
検出されたオブジェクトの上に画像を重ねるのに役立つものは驚くべきものです。ありがとう!
ios - iOS VNImageHomographicAlignmentObservation warpTransform を適用するには?
Apple の Vision Alignment API をテストしていて、VNHomographicImageRegistrationRequest に関して質問があります。誰かがそれを機能させましたか?そこから warpTransform を取得できますが、意味のあるマトリックスをまだ見ていません。つまり、画像を元の画像にワープする結果を取得できません。ワープを処理するために Opencv warpPerspective を使用しています。
変換を取得するためにこれを呼び出しています。
}
これは機能し、ホモグラフィ行列を出力しますが、その結果は、SIFT + Opencv findHomography ( https://docs.opencv.org/3.0-beta/doc/tutorials/features2d/feature_homography/feature_homography. html )
画像のペアに関係なく、Apple Vision データセットから妥当なホモグラフィック結果を得ることができません。
前もって感謝します、
swift - iOS アプリでエネルギーへの影響を大幅に減らす方法は?
Vision フレームワーク機能 (CoreML モデルの処理) を備えた ARKit アプリを開発しています。
loopCoreMLUpdate()
関数は、非常に高いエネルギーへの影響(CPU=70%、GPU=66%)につながるループを作成します。
このタスクを処理し、エネルギー影響を LOW レベルに下げるにはどうすればよいですか?
CPU/GPU ワークロードを減らすのに役立つ、このループの問題の回避策は何ですか?
ここに私のコードがあります: