JP7165375B1 - 算出装置、算出システム、算出方法、算出プログラム - Google Patents

算出装置、算出システム、算出方法、算出プログラム Download PDF

Info

Publication number
JP7165375B1
JP7165375B1 JP2022537749A JP2022537749A JP7165375B1 JP 7165375 B1 JP7165375 B1 JP 7165375B1 JP 2022537749 A JP2022537749 A JP 2022537749A JP 2022537749 A JP2022537749 A JP 2022537749A JP 7165375 B1 JP7165375 B1 JP 7165375B1
Authority
JP
Japan
Prior art keywords
target moving
calculation
moving object
calculated
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022537749A
Other languages
English (en)
Other versions
JPWO2023132087A5 (ja
JPWO2023132087A1 (ja
Inventor
建一 林
俊輔 南部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qoncept Inc
Original Assignee
Qoncept Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qoncept Inc filed Critical Qoncept Inc
Application granted granted Critical
Publication of JP7165375B1 publication Critical patent/JP7165375B1/ja
Publication of JPWO2023132087A1 publication Critical patent/JPWO2023132087A1/ja
Publication of JPWO2023132087A5 publication Critical patent/JPWO2023132087A5/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0021Tracking a path or terminating locations
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B69/00Training appliances or apparatus for special sports
    • A63B69/36Training appliances or apparatus for special sports for golf
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B69/00Training appliances or apparatus for special sports
    • A63B69/36Training appliances or apparatus for special sports for golf
    • A63B69/3658Means associated with the ball for indicating or measuring, e.g. speed, direction
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01PMEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
    • G01P3/00Measuring linear or angular speed; Measuring differences of linear or angular speeds
    • G01P3/36Devices characterised by the use of optical means, e.g. using infrared, visible, or ultraviolet light
    • G01P3/38Devices characterised by the use of optical means, e.g. using infrared, visible, or ultraviolet light using photographic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0021Tracking a path or terminating locations
    • A63B2024/0028Tracking the path of an object, e.g. a ball inside a soccer pitch
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0021Tracking a path or terminating locations
    • A63B2024/0028Tracking the path of an object, e.g. a ball inside a soccer pitch
    • A63B2024/0031Tracking the path of an object, e.g. a ball inside a soccer pitch at the starting point
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/05Image processing for measuring physical parameters
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/10Positions
    • A63B2220/16Angular positions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/20Distances or displacements
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/30Speed
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/80Special sensors, transducers or devices therefor
    • A63B2220/807Photo cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30221Sports video; Sports image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30221Sports video; Sports image
    • G06T2207/30224Ball; Puck
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory

Abstract

ゴルフなどの運動競技において、ゴルフクラブなどの用具で打ち上げられたボールなど目標とする動体の軌道や飛距離を、撮像した画像から算出するニーズがある。特に、近年、スマートフォンなど簡便な撮影機材の普及により分解能の低い単眼カメラによって撮像された画像から目標とする物体の軌道や飛距離を精度高く算出することが求められている。本願に係る算出装置、算出システム、算出方法、算出プログラムによれば、ゴルフなどの運動競技において、ゴルフクラブなどの用具で打ち上げられたボールなど目標とする動体の初速度と打ち出し角度を、背景から目標とする動体の検出が容易な上方向から撮像した複数の画像フレームの情報から算出することができる。これにより、分解能の低い単眼カメラによって撮像された画像からであっても、目標とする物体の軌道や飛距離を精度高く算出することができる。

Description

本開示は、算出装置、算出システム、算出方法、算出プログラムに関するものである。
ゴルフなどの運動競技において、ゴルフクラブなどの用具で打ち上げられたボールなど、目標とする動体の軌道や飛距離を、撮像した画像から算出するニーズがある。特に、近年、スマートフォンなど簡便な撮影機材の普及により分解能の低い単眼カメラによって撮像された画像から目標とする物体の軌道や飛距離を精度高く算出することが求められている。
このニーズに対して目標とする物体の軌道を横方向(ゴルフの例では、ゴルファーの正面)から単眼カメラによって撮像した画像から軌道や飛距離を算出する技術が開示されている。例えば、特許文献1に記載の技術などである。
また、物体が打ち出される向きに単眼カメラを向けて(ゴルフの例では、ゴルファーの側面方向であってボールが打ち出される向きとは逆の側にカメラを設置して)撮像した画像から目標とする物体の軌道や飛距離を算出する技術が開示されている。例えば、特許文献2に記載の技術などである。
特開2021-093931号公報 特開2021-108015号公報
しかしながら、先行技術による方法では、目標とする物体の検出が困難との課題がある。具体的にゴルフを例にとって説明すると、特許文献1に記載の技術のようなゴルファーの正面から撮像した画像を用いる技術の場合、背景に木々や観客などが写り込む場合が多く、この背景を含む画像から小さな白いボールを検出する必要がある。また、特許文献2に記載の技術のようなゴルファーの側面であってボールが打ち出される向きとは逆の側にカメラを設置して撮像した画像を用いる技術の場合、背景に木々や観客などが写り込むことに加えて、遠方に飛んでいくボールは時刻の経過に従ってカメラから遠ざかり、像が小さくなっていくことで更に検出が困難となる。
一方、物体の上方向(天頂から地表面に向かう方向)から撮像すれば、ゴルフの例では、背景は地表面(多くの場合は芝生)となって、目標とする物体である小さな白いボールであっても検出は容易である。分解能の低い単眼カメラによって撮像された画像からでも、高度な検出技術を用いなくとも、目標とする動体の検出は容易である。また、物体の上方向から撮像した画像から目標とする物体の軌道や飛距離を直接的に求めることの困難性は高くなるが、目標とする物体が射出された際の初速度と打ち出し角度(仰角)が算出できれば、これらから物理法則に基づいて容易に目標とする物体の軌道や飛距離を求めることができる。
そこで、本発明は、物体の上方向から単眼カメラで撮像された画像を用いて射出された目標とする物体の初速度と打ち出し角度を算出する装置、方法、プログラム、システムを提供することを目的とする。
本発明の一態様である算出装置は、単眼カメラで上方向から撮像した複数の画像フレームの情報から、射出された目標とする動体の初速度と打ち出し角度を算出する算出装置であって、画像フレームの情報から目標とする動体を検出する検出部と、検出部が検出した目標とする動体の三次元位置を算出する位置算出部と、位置算出部が算出した目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の初速度を算出する初速度算出部と、位置算出部が算出した目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の打ち出し角度を算出する打ち出し角度算出部と、を備えることを特徴とする。
本発明の一態様である算出装置は、複数の画像フレームは、一定の時間間隔で撮像された連続する複数の画像フレームであって、位置算出部は、目標とする動体の運動を等速直線運動と近似することで算出する、ことを特徴とする。
本発明の一態様である算出装置は、位置算出部は、画像フレームに撮像された目標とする動体の像についての三次元位置と、単眼カメラのレンズの光学中心の三次元位置と、を結んだ存在直線を算出する存在直線算出部と、目標とする動体が存在する可能性のある存在面を算出する存在面算出部と、を備え、存在直線算出部が算出した存在直線と、存在面算出部が算出した存在面と、が交わる点の三次元位置を、目標とする動体の三次元位置として算出する、ことを特徴とする。
本発明の一態様である算出装置は、位置算出部は、目標とする動体が存在する可能性のある複数の三次元位置の候補から探索アルゴリズムによって目標とする動体が存在する可能性が最も高い三次元位置の候補を目標とする動体の三次元位置として算出する、ことを特徴とする。
本発明の一態様である算出装置は、位置算出部は、探索アルゴリズムは、画像フレームに撮像された目標とする動体が存在する可能性のある三次元位置の候補の三次元距離から求めた評価値を評価することによって、目標とする動体が存在する可能性が最も高い三次元位置の候補を探索する、ことを特徴とする。
本発明の一態様である算出装置は、初速度算出部が算出した目標とする動体の初速度と、打ち出し角度算出部が算出した目標とする動体の打ち出し角度と、から目標とする動体の三次元での軌道を算出する軌道算出部を備える、ことを特徴とする。
本発明の一態様である算出装置は、初速度算出部が算出した目標とする動体の初速度と、打ち出し角度算出部が算出した目標とする動体の打ち出し角度と、から目標とする動体の飛距離を算出する飛距離算出部を備える、ことを特徴とする。
本発明の一態様である算出システムは、目標とする動体を上方向から撮像する位置に配置された単眼カメラと、算出装置と、からなることを特徴とする。
本発明の一態様である算出方法は、単眼カメラで上方向から撮像した複数の画像フレームの情報から、射出された目標とする動体の初速度と打ち出し角度を算出する算出方法であって、画像フレームの情報から目標とする動体を検出する検出ステップと、検出ステップで検出した目標とする動体の三次元位置を算出する位置算出ステップと、位置算出ステップで算出した目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の初速度を算出する初速度算出ステップと、位置算出ステップで算出した目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の打ち出し角度を算出する打ち出し角度算出ステップと、を備えることを特徴とする。
本発明の一態様である算出プログラムは、単眼カメラで上方向から撮像した複数の画像フレームの情報から、射出された目標とする動体の初速度と打ち出し角度を、コンピュータに算出させる算出プログラムであって、画像フレームの情報から目標とする動体を検出する検出ステップと、検出ステップで検出した目標とする動体の三次元位置を算出する位置算出ステップと、位置算出ステップで算出した前記目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の初速度を算出する初速度算出ステップと、位置算出ステップで算出した目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の打ち出し角度を算出する打ち出し角度算出ステップと、をコンピュータに実行させることを特徴とする。
本発明の一態様である算出プログラムを記録するコンピュータ読取り可能な記録媒体は、単眼カメラで上方向から撮像した複数の画像フレームの情報から、射出された目標とする動体の初速度と打ち出し角度を、コンピュータに算出させる算出プログラムを記録するコンピュータ読取り可能な記録媒体であって、算出プログラムは、画像フレームの情報から目標とする動体を検出する検出ステップと、検出ステップで検出した目標とする動体の三次元位置を算出する位置算出ステップと、位置算出ステップで算出した目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の初速度を算出する初速度算出ステップと、位置算出ステップで算出した目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の打ち出し角度を算出する打ち出し角度算出ステップと、をコンピュータに実行させることを特徴とする。
本発明によれば、ゴルフなどの運動競技において、ゴルフクラブなどの用具で打ち上げられたボールなど目標とする動体の初速度と打ち出し角度を、上方向から撮像した複数の画像フレームの情報から算出することによって、分解能の低い単眼カメラによって撮像された画像からであっても、精度高く算出することができる。
算出装置のブロック図である。 算出装置のハードウェア構成図である。 実三次元空間での三次元直交座標系ΣXYZを示す図である。 射出された目標とする動体を単眼カメラで上方向から撮像した一定の時間間隔で撮像された連続する複数の画像フレームを重畳した様子を示す図である。 一定の時間間隔で撮像された連続する複数の画像フレームに撮像された互いに隣り合った目標とする動体の像の二次元での距離が、時刻の経過とともに大きくなっていくことを説明するための図である。 各座標系について相互の関連を説明する図である。 算出装置の動作を示すフローチャートである。 位置算出処理の概要を説明するための簡略化された模式図である。 位置算出処理を説明するための図である。 位置算出処理を説明するための図である。 位置算出処理を説明するための図である。 位置算出処理を説明するための図である。 位置算出処理を説明するための図である。 算出装置のブロック図である。 算出装置のブロック図である。 位置算出処理のフローチャートである。 位置算出処理の一部を説明するための図である。 存在直線と軌道がねじれの位置にある状況を説明するための図である。 算出装置のブロック図である。
本発明の実施例について図面を参照して説明する。なお、重複する説明は省略し、各図面において同一又は相当部分には同一の符号を付す。
本発明の実施例において、算出装置、算出方法、算出プログラム、算出システムは、例えば、ゴルフなどの運動競技において、ゴルフクラブなどの用具で打ち上げられたボールなど目標とする動体の初速度と打ち出し角度を、上方向から撮像した複数の画像フレームの情報から算出することによって、分解能の低い単眼カメラによって撮像された画像からであっても、精度高く算出することができる。なお、上方向については後述する。
本発明について、実施例では、説明理解の容易性を考慮して、ゴルフにおいて射出されたゴルフボールを目標とする動体とし、その三次元での初速度と打ち出し角度を単眼カメラで上方向から撮像した複数の画像フレームの情報から算出する例をとって説明する。なお、これは例示であって、ゴルフのみに本発明の適用を限るものではない。
本発明の実施例1として開示する、算出装置、算出方法、算出プログラム、算出システムは、目標とする動体の三次元位置を単眼カメラで上方向から撮像した複数の画像フレームの情報から直接的に算出する例を開示する。あわせて、実施例1では、目標とする動体の三次元位置として算出について、目標とする動体の運動を等速直線運動と近似して算出する例を開示する。
まず、算出装置について説明する。図1は、算出装置のブロック図である。算出装置1は、単独で装置として構成される形態のみならず、他の装置に組み込まれて使用される形態であってもよい。算出装置1を組み込む他の装置は、例えば、スマートフォン、情報携帯端末、デジタルカメラ、ゲーム端末、テレビ等の電化製品であってもよい。算出装置1は、図2に示すように、物理的には、中央演算装置(CPU)201、入力装置202、出力装置203、主記憶装置(RAM/ROM)204、補助記憶装置205を含むコンピュータとして構成される。
算出装置1の各機能は、図2に示す中央演算装置(CPU)201、主記憶装置(RAM/ROM)204等に、単眼カメラで上方向から撮像した複数の画像フレームの情報から射出された目標とする動体の初速度と打ち出し角度をコンピュータに算出させる算出プログラムを読み込ませることにより、中央演算装置(CPU)201の制御により入力装置202、出力装置203を動作させるとともに、主記憶装置(RAM/ROM)204、補助記憶装置205とデータの読み書きを行うことで実現される。
図1に示すように、算出装置1は、検出部101、位置算出部102、初速度算出部103及び打ち出し角度算出部104を備えている。算出装置1には、外部から入力として、単眼カメラで上方向から撮像した複数の画像フレームの情報が与えられる。画像フレームの情報には、撮像された順序と各々の画像フレームが撮像された時間間隔を算出するための情報を備えている。具体的には、撮像された順序を示すフレーム番号や撮像された時刻などである。また、算出装置1は、目標とする動体の初速度と打ち出し角度についての情報を外部へ出力する。
図1のブロック図に従って、算出装置1の各ブロックの機能を説明する。なお、各ブロックの詳細な動作については後述する。
検出部101は、外部から入力された単眼カメラで上方向から撮像した複数の画像フレームの情報から目標とする動体を検出する。
位置算出部102は、検出部101が検出した目標とする動体の三次元位置を算出する。具体的な算出処理については後述する。
初速度算出部103は、位置算出部102が算出した目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の初速度を算出する。
打ち出し角度算出部104は、位置算出部102が算出した目標とする動体の三次元位置と、画像フレームの情報と、から目標とする動体の打ち出し角度を算出する。
次に、本実施例の説明で使用する座標系等について説明する。
図3は、本実施例の説明において使用する実三次元空間での三次元直交座標系である座標系ΣXYZを示す図である。地表面に置かれたゴルフボール301と、ゴルフボール301を打つゴルファー302を示している。座標系ΣXYZは、図3に示す通り原点Oを、ゴルフボール301と地表面の接点にとる。原点Oから天頂の向きを正とするZ軸を、ゴルフボール301が射出される側を正とした向きにX軸を、ゴルファー302の正面から背面に向かう向きを正としたY軸を、三軸が直交するように設定する。XY平面が地表面である。なお、本実施例では、説明理解の容易性を考慮して、座標系ΣXYZを上述の通りとして説明するが、本発明において、実三次元空間での目標とする動体(ゴルフボール)の三次元位置を特定できれば、座標系ΣXYZは他の設定でも構わない。例えば、原点Oをゴルフボール301の中心として座標系ΣXYZを設定することもできる。また、ゴルフボール301がティーアップされている場合には、原点Oをゴルフボール301の直下でティーと地表面の接点にとる、原点Oをゴルフボール301とティーの接点にとる、原点Oをゴルフボール301の中心にとるなどでもよい。さらに、原点Oをゴルフボール301とは無関係の既知の固定位置として座標系ΣXYZを設定してもよい。
図4は、射出された目標とする動体(ゴルフボール)を単眼カメラで上方向から一定の時間間隔で撮像された連続する複数の画像フレームを重畳した様子を示す図である。座標系Σuvは、画像フレーム401に設定される二次元直交座標系である。座標系Σuvの原点Qは、単眼カメラのレンズの光軸と画像フレーム401の交点である。単眼カメラのレンズの光軸は画像フレーム401と直交する。402は、時刻0での目標とする動体(ゴルフボール)の像である。画像フレーム401は、目標とする動体(ゴルフボール)を位置が固定された単眼カメラで上方向から撮像している。ここで、上方向から撮像とは、目標に対して天頂側から撮像することをいう。理想的には、図3に示すZ軸と単眼カメラのレンズの光軸が一致するように目標とする動体(ゴルフボール)の上方に単眼カメラを設置することが望ましいが、目標に対して天頂側から撮像されていれば、図3に示すZ軸と単眼カメラのレンズの光軸が一致していなくとも上方向からの撮像である。すなわち、図3に示すZ軸と単眼カメラのレンズの光軸が一致する理想的な場合には、画像フレーム401で、時刻0における目標とする動体(ゴルフボール)の像402の位置は座標系Σuvの原点Qとなるが、図4で示すように時刻0での目標とする動体(ゴルフボール)の像402が座標系Σuvの原点Qと位置が一致しないことを妨げるものではない。
図4で、鎖線矢印403は、射出された目標とする動体(ゴルフボール)の像が画像フレーム401上を移動する方向を示している。鎖線矢印403の上に示す黒丸は、一定の時間間隔で撮像された連続する複数の画像フレームに撮像された目標とする動体(ゴルフボール)の像を重畳したものである。連続する複数の画像フレームであることから、互いに隣り合った目標とする動体(ゴルフボール)の像が撮像された時間間隔はいずれも同じである。すなわち、フレームレートが一定(1/T)である。図4に示すように、画像フレーム401に重畳された、一定の時間間隔で撮像された連続する複数の画像フレームに撮像された互いに隣り合った目標とする動体(ゴルフボール)の像の画像フレーム401上の二次元での距離は、時刻の経過とともに大きくなっていく。
図5は、画像フレーム401に重畳された、一定の時間間隔で撮像された連続する複数の画像フレームに撮像された互いに隣り合った目標とする動体(ゴルフボール)の像の画像フレーム401上の二次元での距離が、時刻の経過とともに大きくなっていくことを説明するための図である。射出された目標とする動体(ゴルフボール)が放物運動をすると考えると、射出直後には水平方向(座標系ΣXYZにおけるXY平面と平行な方向)については等速度運動と考えられるため、同じ時間間隔であれば、水平方向の移動距離は同じである。一方、射出された目標とする動体(ゴルフボール)を単眼カメラで上方向から撮像する場合、目標とする動体(ゴルフボール)は、垂直方向には撮像している単眼カメラのレンズに近づく方向に移動する。水平方向の移動距離が同じであっても、画角の関係でレンズに近い方が画像フレーム上での移動距離は大きく、レンズから遠い方が画像フレーム上での移動距離は小さくなる。図5で、矢印501と矢印502は同じ長さであるが、単眼カメラ503で撮像した場合、画像フレーム上での二次元距離は矢印501に対して矢印502が長くなる。単眼カメラ503のレンズの光学中心504からの距離が矢印501に対して矢印502がより近くなるからである。
図6は、本実施例で使用する各座標系について相互の関連を説明する図である。座標系ΣXYZは、図3を用いて説明した実三次元空間での三次元直交座標系である。原点Oの三次元座標をO(0,0,0)とする。座標系Σuvは、図4を用いて説明した画像フレーム401に設定される二次元直交座標系である。原点Qの二次元座標をQ(u0,v0)とする。座標系Σxyzは、単眼カメラのレンズの光学中心に原点Pcを持つ三次元直交座標系である。原点Pcの座標系ΣXYZにおける三次元座標をPc(X0,Y0,Z0)とする。本実施例では、単眼カメラのレンズの光学中心の実三次元空間での位置(座標系ΣXYZにおける原点Pcの座標)は既知であるとして説明する。単眼カメラの位置が固定されてレンズの光学中心の実三次元空間での座標があらかじめ与えられていてもよいし、撮像された画像情報と単眼カメラの外部パラメーターからレンズの光学中心の実三次元空間での座標を算出して決定してもよい。座標系Σuvは、座標系Σxyzを平行移動した座標系で、x軸とu軸、y軸とv軸は、それぞれ互いに平行である。また、座標系Σxyzのz軸と画像フレーム401の交点が座標系Σuvの原点Qとなる。座標系Σxyzのz軸は単眼カメラのレンズの光軸にあたる。座標系Σxyzのz軸は画像フレーム401と直交する。画像フレーム401上のP’は、目標とする動体(ゴルフボール)Pの像である。P及びP’について詳しくは後述する。また、図6に示す平面601については、実施例2において後述する。
次に、本実施例に係る算出装置1の動作について説明する。図7は、本実施例に係る算出装置1の動作を示すフローチャートである。図7のフローチャートに従って本実施例に係る算出装置1の動作を説明する。
算出装置1には、処理の対象となる単眼カメラで上方向から撮像した複数の画像フレームの情報が外部から入力される。算出装置1は、処理の対象となる情報が入力された後に動作を開始する。動作の開始は、情報の入力後に自動的であっても、明示的な命令によるものであってもよい。算出装置1は、入力された毎々の画像フレームの情報を読み込んで図7のフローチャートの処理を行う。
画像フレームの情報には、撮像された目標とする動体(ゴルフボール)の画像情報に加えて、初速度の算出に必要な情報を含む。例えば、撮像された時刻、フレーム番号、フレームレートなどである。ここにあげた情報の例は、初速度の算出に必要な情報であって、初速度の算出ができれば、情報の種別は問わない。本実施例では、処理の対象となる複数の画像フレームは、連続して撮像されたものであって、フレームレートが一定(1/T)であり、撮像された順に連続したフレーム番号を情報として持つとして説明する。
算出装置1は、動作を開始すると、検出部101が検出処理(S701)を実行する。検出処理(S701)では、入力された画像フレームの情報から目標とする動体(ゴルフボール)を検出する。
画像フレームの情報からの目標とする動体(ゴルフボール)の検出については、目標とする動体(ゴルフボール)の画像フレームでの二次元座標が決定できれば方法は問わない。例えば、テンプレートマッチングなどの画像検出の手法による。前述の通り、ゴルフにおいては、上方向から撮像すれば、背景は地表面(多くの場合は芝生)となって一様であるため、小さな白いゴルフボールであってもテンプレートマッチングなど簡便な手法でも検出は容易である。
検出部101は、入力された毎々の画像フレームの情報から、目標とする動体(ゴルフボール)を検出して、画像フレームでの二次元座標を決定すると、検出処理(S701)を終了する。検出処理(S701)が終了すると、位置算出部102が、位置算出処理(S702)を開始する。
図8は、位置算出処理(S702)の概要を説明するための簡略化された模式図である。図8は、地表面801に接して置かれた目標とする動体(ゴルフボール)802が射出された様子を、上方向に設置された単眼カメラから撮像する状況を示している。地表面801に接して置かれた目標とする動体(ゴルフボール)802と地表面801の接点が実三次元空間での三次元直交座標系である座標系ΣXYZの原点Oとなる。地表面801はXY平面にあたり、Z軸は地表面801に対して垂直に上方に向かう。
図8では、地表面801に接して置かれた目標とする動体(ゴルフボール)802が射出された軌道803の軌道面での様子を模式的に示す。本実施例において、軌道面とは、目標とする動体(ゴルフボール)が射出された軌道と単眼カメラのレンズの光学中心の位置がその上に存在する平面を指す。本実施例では、地表面801に接して置かれた目標とする動体(ゴルフボール)802の中心を基準点と記述する。ゴルフボールの半径の値はrとすると座標系ΣXYZでの基準点の座標は、(0,0,r)となる。
位置算出処理に使用する情報は射出直後の短時間に撮像された画像フレームの情報であることから、本実施例における位置算出処理(S702)では目標とする動体(ゴルフボール)の運動を等速直線運動と近似することで算出する。よって、図8に示す軌道803は、直線となる。位置804は単眼カメラのレンズの光学中心の位置Pcである。Pcから引かれた2本の破線は、単眼カメラの撮像の範囲を示す。2本の破線が成す角度が単眼カメラのレンズの画角となる。軌道803上に示す黒丸は、連続して撮像された各時刻における目標とする動体(ゴルフボール)の位置を示す。位置804に固定された単眼カメラの画像フレームには、地表面801に接して置かれた目標とする動体(ゴルフボール)802から、射出されて軌道803上を移動する目標とする動体(ゴルフボール)805までが撮像される。
本実施例の説明では、単眼カメラの画像フレームに連続して撮像された目標とする動体(ゴルフボール)のうち、地表面801に接して置かれた目標とする動体(ゴルフボール)802を除いて、撮像された時刻が最も早いものを始点、最も遅いものを終点と記述する。図8では、806(ゴルフボールの中心の位置)が始点、805(ゴルフボールの中心の位置)が終点となる。また、目標とする動体(ゴルフボール)に始点を1とした連続した番号nを付与する。終点の番号nをNとする。図8の場合、N=4となる。前述の通り、本実施例では目標とする動体(ゴルフボール)の運動を等速直線運動と近似するから、始点から終点までにおいて隣接する撮像された目標とする動体(ゴルフボール)の距離はいずれも等しい。連続して撮像されたものであって、フレームレートが一定(1/T)だからである。一方、地表面801に接して置かれた目標とする動体(ゴルフボール)802の位置と始点の位置806の距離は、他の隣接する撮像された目標とする動体(ゴルフボール)の距離よりも短くなる。地表面801に接して置かれた目標とする動体(ゴルフボール)802が射出された時刻と撮像された時刻は一致せず、射出された時刻は撮像された時刻よりも後となるからである。
本実施例に係る位置算出処理(S702)は、目標とする動体(ゴルフボール)について、始点から終点まで各点の実三次元空間での三次元位置を、検出処理(S701)で決定された画像フレームでの各点の二次元座標から、算出する。以下、図8における終点805の実三次元空間での三次元位置の算出を例にとって位置算出処理(S702)を説明する。
図9から図13は、終点805の実三次元空間での三次元位置の算出を例にとって位置算出処理(S702)を説明するための図である。図9から図13を説明することで、図8における終点805の実三次元空間での三次元位置の算出での位置算出処理(S702)を説明する。
図9は、終点805の実三次元空間での三次元位置の算出を例にとって位置算出処理(S702)を説明するために図8に追記した図である。図9は、図8と同様に、地表面801に接して置かれた目標とする動体(ゴルフボール)802が射出された軌道803の軌道面での様子を示している。軌道803上のP0からP4は各々連続して撮像された各時刻における目標とする動体(ゴルフボール)を示す。P0が基準点802、P1が始点806、P4が終点805である。401は画像フレームであって、P’0はP0の、P’2はP2の、P’3はP3の、P’4はP4の各々画像フレーム401上の像を示す。P’0からP’4の各点を結ぶ直線が軌道803の画像フレーム401上の像である。Q’は、単眼カメラのレンズの光学中心の位置Pcから軌道803の画像フレーム401上の像への垂線の足である。
図10は、図9における画像フレーム401を示した図である。直線1001は、軌道803の画像フレーム401上の像であって、P’0からP’4の各点は直線1001上にある。前述の図9での説明の通り、Q’は、単眼カメラのレンズの光学中心の位置Pcから軌道803の画像フレーム401上の像1001への垂線の足である。ここで、単眼カメラのレンズの光学中心の位置PcとQ’の距離をf’とする。次に、Qは、図6の説明において前述した画像フレーム401上の二次元座標系Σuvの原点であって、単眼カメラのレンズの光学中心の位置Pcから画像フレーム401への垂線の足となる。また、単眼カメラのレンズの光学中心の位置PcとQの距離fは、単眼カメラのレンズの焦点距離である。さらに、QとQ’を結ぶ直線と、直線1001は直交する。
図10で、eは、QとQ’の距離である。画像フレーム401上の目標とする動体(ゴルフボール)の像であるP’0からP’4の各点の二次元座標系Σuvでの座標は画像フレーム情報から求めることができて、これらから画像フレーム401上の直線1001を求めることができる。Q’は、二次元座標系Σuvの原点Qから直線1001への垂線の足であって、幾何学的に二次元座標系ΣuvでのQ’座標を求めることができることからhを求めることができる。焦点距離fは単眼カメラのレンズ固有の値であって既知とすると次の式(数式1)が成り立つ。

(f’)=e+f

この式(数式1)によってf’を求めることができる。
図11は、図9から画像フレーム401上の目標とする動体(ゴルフボール)の像に関する部分を抽出し、記号等を追記した図である。PcとP’4を結ぶ直線とPcとP’3を結ぶ直線が成す角をα、PcとP’4を結ぶ直線とPcとP’2を結ぶ直線が成す角をβ、PcとP’4を結ぶ直線とPcとP’0を結ぶ直線が成す角をγとする。PcとQ’を結ぶ直線とPcとP’4を結ぶ直線が成す角をA、PcとQ’を結ぶ直線とPcとP’3を結ぶ直線が成す角をB、PcとQ’を結ぶ直線とPcとP’2を結ぶ直線が成す角をC、PcとQ’を結ぶ直線とPcとP’0を結ぶ直線が成す角をDとする。Q’とP’4の距離をa、Q’とP’3の距離をb、Q’とP’2の距離をc、Q’とP’0の距離をdとする。なお、画像フレーム401上の目標とする動体(ゴルフボール)の像であるP’0からP’4の各点の二次元座標系Σuvでの座標は画像フレーム情報から求めることができ、これら座標からa、b、c、dは算出することができる。。
図11に基づいて、a、b、c、dと、前述の数式1によって求められるf’(単眼カメラのレンズの光学中心の位置PcとQ’の距離)から、tanαとtanβの導出について説明する。以下に、tanαとtanβの導出を数式で示す。
図11から次の一連の関係式が導かれる。

A=arctan(a/f’)
B=arctan(b/f’)
C=arctan(c/f’)
D=arctan(d/f’)
さらに、図11から次の一連の関係式が導かれる。

α=A-B
β=A+C
γ=A+D
上述の関係式と正接加法定理から次のとおりtanαを導出する。

tanα=tan(A-B)
tanα=(tanA-tanB)/(1+tanA・tanB)
tanα=(a/f’-b/f’)/(1+a・b/(f’)
tanα=(a-b)/(f’+a・b/f’)

ここで導出されたtanαの式を数式2とする。
同様にして、tanβを次の式(数式3)として導出する。

tanβ=(a+c)/(f’-a・c/f’)
図12は、図9から実三次元空間での目標とする動体(ゴルフボール)に関する部分を抽出し、記号等を追記した図である。図12で、破線で示す直線1201は、Pcから軌道803への垂線であって、この直線1201とPcとP4を結ぶ直線が成す角をδとする。また、軌道803とPcとP4を結ぶ直線が成す角をθとする。本実施例において、目標とする動体(ゴルフボール)は等速直線運動を行うとされることから、P2とP3の距離とP3とP4の距離は等しく、これをgとする。
図12に基づいて、角度θの導出について説明する。角度θをtanαとtanβによって表記する。以下に、角度θの導出を数式で示す。
図12において次の関係式が成立する。

2・(tanδ+tan(α-δ))=tanδ+tan(β-δ)=2・d

この関係式に正接加法定理を適用した後に、tanδの3次式に展開して整理をする。

tanδ+2・(tanα-tanδ)/(1+tanα・tanδ)-(tanβ-tanδ)/(1+tanβ・tanδ)=0
tanα・tanβ・(tanδ)+(2・tanα-tanβ)・(tanδ)+tanα・tanβ・tanδ+2・tanα-tanβ=0
(tanα・tanβ・tanδ+2・tanα-tanβ)((tanα)+1)=0

ここで、(tanα)+1は常に正であるから、

tanα・tanβ・tanδ+2・tanα-tanβ=0
tanδ=1/tanα-2/tanβ
δ=arctan(1/tanα-2/tanβ)

三角形の内角の和はπであるので、角度θは次の式(数式4)で表される。また、tanαとtanβは、前出の数式2と数式3で求められる。

θ=π/2-δ=π/2-arctan(1/tanα-2/tanβ)
図13は、終点805の実三次元空間での三次元位置の算出を説明するために、図9から部分を抽出し、記号等を追記した図である。図13において、軌道803とPcとP0を結ぶ直線が成す角をφとする。また、PcとP0の距離をhと、PcとP4の距離をwとする。
図13において次の関係式(数式5)が成立する。

w・sinθ=h・sinφ
w=h・sinφ/sinθ

ここで、単眼カメラのレンズの光学中心Pcと地表面801に接して置かれた目標とする動体(ゴルフボール)P0の実三次元空間での三次元位置は既知であるので、PcとP0の距離hは算出できる。sinφとsinθが求まれば、数式5によってPcとP4の距離wを算出できる。前出の数式4によってθが算出されるので、sinθが求まる。
φについて次の関係式が成立する。

φ=π-γ-θ

θは、前出の数式4によって算出される。γは、図11での説明の通り、次の式で算出される。

γ=A+D=arctan(a/f’)+arctan(d/f’)
数式5によってPcとP4の距離wが求まることで、P4(終点805)の実三次元空間での三次元位置を次のようにベクトル表記(数式6)することができる。

P4=Pc+w・(P’4-Pc)/|P’4-Pc|
本実施例において、位置算出部102は、位置算出処理(S702)として、上述の図8から図13による説明の処理を行って、目標とする動体(ゴルフボール)の三次元位置を算出する。なお、ここで開示した処理は例示であってこれに限るものではない。検出処理(S701)で検出された目標とする動体の三次元位置を算出できれば処理の方法は問わない。
図7に戻り、位置算出処理(S702)が終了すると、初速度算出部103が初速度算出処理(S703)を、打ち出し角度算出部104が打ち出し角度算出処理(S704)を、それぞれ実行する。初速度算出処理(S703)では、位置算出処理(S702)で算出された目標とする動体(ゴルフボール)の三次元座標から算出した互いに隣り合った目標とする動体(ゴルフボール)の間の距離の平均値を求め、この値にフレームレート(1/T)を乗じた値を初速度として算出する。打ち出し角度算出処理(S704)では、位置算出処理(S702)で算出された目標とする動体(ゴルフボール)の三次元座標から始点と終点を結ぶ直線を算出し、この直線と地表面(座標系ΣXYZにおけるXY平面)のなす角を打ち出し角度として算出する。
算出装置1は、初速度算出部103が初速度算出処理(S703)で算出した初速度と、打ち出し角度算出部104が打ち出し角度算出処理(S704)で算出した打ち出し角度を出力する。
算出装置1は、図12に示すように、軌道算出部105、飛距離算出部106を備えてもよい。軌道算出部105は、初速度算出部103が算出した目標とする動体の初速度と、打ち出し角度算出部104が算出した目標とする動体の打ち出し角度と、から目標とする動体の三次元での軌道を算出する。目標とする動体は、自然法則に従って放物運動をするとして軌道を算出する。また、飛距離算出部106は、初速度算出部103が算出した目標とする動体の初速度と、打ち出し角度算出部104が算出した目標とする動体の打ち出し角度と、から目標とする動体の飛距離を算出する。軌道算出部105が算出する軌道と地表面(座標系ΣXYZでのXY平面)との交点である着地点を求めることで飛距離を算出する。
以上が、算出装置についての説明である。
次に、算出システムについて説明する。算出システムは、目標とする動体を上方向から撮像する位置に配置された単眼カメラと、上述の算出装置と、からなる。単眼カメラと算出装置は、互いに分離していてもよいし、一体としてシステムを構成してもよい。単眼カメラと算出装置が互いに分離しているシステムでは、単眼カメラと算出装置が有線又は無線による通信ネットワークによって接続されて撮像データを逐次又は一旦蓄積した後に受け渡すことでもよいし、単眼カメラで撮像した撮像データを記憶媒体等に保管してから算出装置に受け渡すことでもよい。また、単眼カメラと算出装置を一体としたシステムでは、例えば、単眼カメラを内蔵したスマートフォンなどの情報機器に後述の算出プログラムをアプリケーションとして提供して算出装置として機能させることで単眼カメラと算出装置を一体としたシステムを構成するなどがある。
次に、コンピュータを算出装置として機能させるための算出プログラムについて説明する。コンピュータの構成は、図2に示す通りである。
算出プログラムは、メインモジュール、入出力モジュール及び演算処理モジュールを備える。メインモジュールは、処理を統括的に制御する部分である。入出力モジュールは、画像データなどの入力情報をコンピュータに取得させ、算出した情報を数値や画像でコンピュータに出力させる。演算処理モジュールは、検出モジュール、位置算出モジュール、初速度算出モジュール、打ち出し角度算出モジュール、存在直線算出モジュール、存在面算出モジュール、軌道算出モジュール及び飛距離算出モジュールを備える。メインモジュール、入出力モジュール及び演算処理モジュールを実行させることにより実現される機能は、算出装置1の検出部101、位置算出部102、初速度算出部103、打ち出し角度算出部104、軌道算出部105及び飛距離算出部106の機能とそれぞれ同様である。
算出プログラムは、例えば、ROM等の記憶媒体又は半導体メモリによって提供される。また、算出プログラムは、ネットワークを介して提供されてもよい。
以上が、実施例1の説明である。
本発明の実施例2として開示する、算出装置、算出方法、算出プログラム、算出システムは、目標とする動体の三次元位置を単眼カメラで上方向から撮像した画像フレームの情報から、画像フレームに撮像された目標とする動体の像についての三次元位置と単眼カメラのレンズの光学中心の三次元位置を結んだ存在直線を算出し、目標とする動体が存在する可能性のある存在面を算出する存在面を算出し、存在直線と存在面が交わる点の三次元位置を目標とする動体の三次元位置として算出する例を開示する。あわせて、実施例2では、目標とする動体の三次元位置として算出について、目標とする動体が存在する可能性のある複数の三次元位置の候補から探索アルゴリズムによって目標とする動体が存在する可能性が最も高い三次元位置の候補を目標とする動体の三次元位置として算出する例を開示する。
まず、算出装置について説明する。図15は、算出装置のブロック図である。図15に示すように、本実施例に係る算出装置1は、検出部101、位置算出部102、初速度算出部103及び打ち出し角度算出部104を備えている。これらは、実施例1と同様である。本実施例に係る算出装置1は、さらに、位置算出部102は、その内部に存在直線算出部107及び存在面算出部108を備えている。この点、実施例1と構成が異なる。
本実施例に係る算出装置1には、外部から入力として、単眼カメラで上方向から撮像した複数の画像フレームの情報が与えられる。画像フレームの情報には、撮像された順序と各々の画像フレームが撮像された時間間隔を算出するための情報を備えている。具体的には、撮像された順序を示すフレーム番号や撮像された時刻などである。また、算出装置1は、目標とする動体の初速度と打ち出し角度についての情報を外部へ出力する。これらは、実施例1と同様である。
本実施例に係る算出装置1は、単独で装置として構成される形態のみならず、他の装置に組み込まれて使用される形態であってもよく、算出装置1を組み込む他の装置は、例えば、スマートフォン、情報携帯端末、デジタルカメラ、ゲーム端末、テレビ等の電化製品であってもよい。算出装置1は、図2に示すように、物理的には、中央演算装置(CPU)201、入力装置202、出力装置203、主記憶装置(RAM/ROM)204、補助記憶装置205を含むコンピュータとして構成される。これらは、実施例1と同様である。
本実施例に係る算出装置1の各機能は、図2に示す中央演算装置(CPU)201、主記憶装置(RAM/ROM)204等に、単眼カメラで上方向から撮像した複数の画像フレームの情報から射出された目標とする動体の初速度と打ち出し角度をコンピュータに算出させる算出プログラムを読み込ませることにより、中央演算装置(CPU)201の制御により入力装置202、出力装置203を動作させるとともに、主記憶装置(RAM/ROM)204、補助記憶装置205とデータの読み書きを行うことで実現される。これらは、実施例1と同様である。
図15のブロック図に従って、本実施例に係る算出装置1の各ブロックの機能を説明する。なお、各ブロックの詳細な動作については後述する。
検出部101、初速度算出部103及び打ち出し角度算出部104の機能は、実施例1と同様である。そのため説明を割愛する。
位置算出部102は、検出部101が検出した目標とする動体の三次元位置を算出する。位置算出部102は、画像フレームに撮像された目標とする動体の像についての三次元位置と、単眼カメラのレンズの光学中心の三次元位置と、を結んだ存在直線を算出する存在直線算出部107と、目標とする動体が存在する可能性のある存在面を算出する存在面算出部108と、を備える。位置算出部102は、存在直線算出部107が算出した存在直線と、存在面算出部108が算出した存在面と、が交わる点の三次元位置を、目標とする動体の三次元位置として算出する。なお、具体的な算出処理については後述する。
次に、本実施例の説明で使用する座標系等について説明する。図3、図4、図5及び図6を用いて実施例1で説明した実三次元空間での三次元直交座標系ΣXYZ、画像フレーム上の二次元直交座標系Σuv及び単眼カメラのレンズの光学中心に原点Pcを持つ三次元直交座標系Σxyzを本実施例の説明でも使用する。説明の重複を避けるため、図3、図4、図5及び図6による座標系等についての詳細な説明は割愛する。なお、図6に示す平面601については、本実施例の説明において後述する。
次に、本実施例に係る算出装置1の動作について説明する。図7は、本実施例に係る算出装置1の動作を示すフローチャートである。図7のフローチャートに従って本実施例に係る算出装置1の動作を説明する。
算出装置1には、処理の対象となる単眼カメラで上方向から撮像した複数の画像フレームの情報が外部から入力される。算出装置1は、処理の対象となる情報が入力された後に動作を開始する。動作の開始は、情報の入力後に自動的であっても、明示的な命令によるものであってもよい。算出装置1は、入力された毎々の画像フレームの情報を読み込んで図7のフローチャートの処理を行う。
画像フレームの情報については、実施例1と同様である。画像フレームの情報には、撮像された目標とする動体(ゴルフボール)の画像情報に加えて、初速度の算出に必要な情報を含む。本実施例では、処理の対象となる複数の画像フレームは、連続して撮像されたものであって、フレームレートが一定(1/T)であり、撮像された順に連続したフレーム番号を情報としてもつとして説明する。
算出装置1は、動作を開始すると、検出部101が検出処理(S701)を実行する。検出処理(S701)では、入力された画像フレームの情報から目標とする動体(ゴルフボール)を検出する。
検出処理(S701)については、実施例1と同様である。画像フレームの情報からの目標とする動体(ゴルフボール)の検出については、目標とする動体(ゴルフボール)の画像フレームでの二次元座標が決定できれば方法は問わない。
検出部101は、入力された毎々の画像フレームの情報から、目標とする動体(ゴルフボール)を検出して、画像フレームでの二次元座標を決定すると、検出処理(S701)を終了する。検出処理(S701)が終了すると、位置算出部102が、位置算出処理(S702)を開始する。
本実施例は、位置算出処理(S702)において実施例1と異なる。本実施例における位置算出処理(S702)では、目標とする動体の三次元位置を単眼カメラで上方向から撮像した画像フレームの情報から、画像フレームに撮像された目標とする動体の像についての三次元位置と単眼カメラのレンズの光学中心の三次元位置を結んだ存在直線を算出し、目標とする動体が存在する可能性のある存在面を算出する存在面を算出し、存在直線と存在面が交わる点の三次元位置を目標とする動体の三次元位置として算出する。あわせて、本実施例では、目標とする動体の三次元位置として算出について、目標とする動体が存在する可能性のある複数の三次元位置の候補から探索アルゴリズムによって目標とする動体が存在する可能性が最も高い三次元位置の候補を目標とする動体の三次元位置として算出する。
本実施例に係る位置算出処理(S702)は、目標とする動体(ゴルフボール)について、始点から終点まで各点の実三次元空間での三次元位置を、検出処理(S701)で決定された画像フレームでの各点の二次元座標から、算出する。なお、ここで、始点及び終点とは、実施例1の説明で使用した始点及び終点と同義である。また、実施例1の説明で使用した基準点についても本実施例において同義で使用する。
図8は、位置算出処理(S702)の概要を説明するための簡略化された模式図である。図8については、本実施例においても実施例1と同様である。説明の重複を避けるため、図8についての詳細な説明は割愛する。なお、本実施例における位置算出処理(S702)においても実施例1と同様に目標とする動体(ゴルフボール)の運動を等速直線運動と近似することで算出する。以下、図8における目標とする動体(ゴルフボール)の実三次元空間での三次元位置の算出を例にとって位置算出処理(S702)を説明する。
図16は、本実施例に係る位置算出処理(S702)のフローチャートである。図16のフローチャートに従って位置算出処理(S702)を説明する。
位置算出部102が、位置算出処理(S702)を開始すると、S1601の処理である初期値設定を行う。位置算出処理(S702)は、探索アルゴリズムによって、軌道上にある始点から終点までの各目標とする動体(ゴルフボール)について、実三次元空間での三次元位置を算出する。本実施例に係る位置算出処理(S702)では、代表的な探索アルゴリズムである二分探索による目標とする動体(ゴルフボール)の実三次元空間での三次元位置を算出について開示する。なお、二分探索は例示であって、本願発明において探索アルゴリズムを二分探索に限るものではない。線形探索や内挿探索など他の探索アルゴリズムによっても構わない。
本実施例において、二分探索では、高さ(座標系ΣXYZでのZ要素の値)をパラメーターとして用いる。位置算出処理(S702)の説明において、二分探索を行う際の高さの下限値をZminと、上限値をZmaxと表記する。本実施例に係るS1601の処理では、二分探索のパラメーターの初期値としてZmin、Zmaxを設定する。本実施例では、Zminをゴルフボールの半径の値rとする。rは、地表面801に接して置かれた目標とする動体(ゴルフボール)802の中心である基準点の高さである。また、Zmaxを単眼カメラのレンズの光学中心の位置の地表面からの高さとする。本実施例では、単眼カメラの位置は固定されており、座標系ΣXYZでの単眼カメラのレンズの光学中心の位置の座標が分かっているとする。この場合、Zmaxは、単眼カメラのレンズの光学中心の位置の座標のZ要素となる。なお、この下限値をZmin、上限値をZmaxの決定は例示であって、本願発明においてこれに限るものではない。例えば、下限値Zminを地表面の高さ(Zmin=0)とするなどでもよい。また、本実施例に係るS1601の処理では、二分探索の探索回数を示すカウンター(i)の値を初期値0と設定する。パラメーターの初期値が設定されるとS1601の処理は終了し、S1602の処理が開始される。
S1602の処理では、始点の三次元座標を存在直線と存在面の交点から算出する。ここで、存在直線とは、画像フレームに撮像された目標とする動体の像と、単眼カメラのレンズの光学中心と、を結んだ三次元直線をいう。目標とする動体は、存在直線上に位置する。また、ここで、存在面とは、目標とする動体が存在する可能性のある三次元平面または曲面をいう。
図6を用いて、本実施例での存在直線と存在面の関係を説明する。目標とする動体(ゴルフボール)Pの画像フレーム401に撮像された像は、P’である。単眼カメラのレンズの光学中心は、Pcである。よって、図6で、存在直線は、P’とPcを結ぶ三次元直線であり、この直線上に目標とする動体(ゴルフボール)Pが位置する。また、図6では、座標系ΣXYZのXY平面に平行であって目標とする動体(ゴルフボール)Pが存在する平面を存在面601として設定する。このとき、存在直線と存在面の交点に目標とする動体(ゴルフボール)Pが位置する。
目標とする動体(ゴルフボール)についての存在直線の算出は、存在直線算出部107が存在直線算出処理(S1603)を実行して算出する。また、目標とする動体(ゴルフボール)についての存在面の算出は、存在面算出部108が存在面算出処理(S1604)を実行して算出する。
図6を用いて、存在直線算出処理(S1603)が行う目標とする動体(ゴルフボール)についての存在直線の算出について説明する。
図6は、目標とする動体(ゴルフボール)Pを単眼カメラで撮像した様子を表す。三次元直交座標系ΣXYZにおける目標とする動体(ゴルフボール)Pの三次元位置を、P(X,Y,Z)とする。目標とする動体(ゴルフボール)は、単眼カメラのレンズの光学中心を三次元直交座標系Σxyzの原点Pcにもつ単眼カメラで画像フレーム401に像P’として撮像される。画像フレーム401での二次元直交座標系Σuvにおける像P’の二次元位置をP’(u,v)とする。
図6において、単眼カメラのレンズの光学中心について、三次元直交座標系ΣXYZにおける三次元位置をPc(X0,Y0,Z0)とする。単眼カメラのレンズの光学中心を原点Pcとする三次元直交座標系Σxyzのz軸が光軸にあたる。光軸は、画像フレーム401と直交し、その交点は画像フレームでの二次元直交座標系Σuvの原点Qとなる。原点Qの二次元位置をQ(u0,v0)とする。三次元直交座標系Σxyzの原点と二次元直交座標系Σuvの原点の距離が焦点距離であって、長さをfとする。
図6において、単眼カメラのレンズの光学中心を原点Pcとする三次元直交座標系Σxyzからみた像P’の位置は、P’(u-u0,v-v0,f)となる。ここで、比例定数をk、単眼カメラのレンズの光学中心を原点Pcとする三次元直交座標系Σxyzから三次元空間における三次元直交座標系ΣXYZへの座標変換行列をRとする。本実施例では三次元空間における三次元直交座標系ΣXYZにおけるカメラの位置座標とローテーションが与えられれば、座標変換行列Rを決定することができる。
ローテーションとは、いわゆるレンズの外部パラメーターであって、図6において座標系Σxyzから座標系ΣXYZに座標変換する際の三軸の回転角度パラメーターである。本実施例では、本願に係る算出プログラムが、いわゆるスマートフォンなど加速度センサーを備える機器に実装されることで本願に係る算出装置を構成するとして、加速度センサーによる計測値からローテーションの値が決定されるとして説明する。ローテーションの値が決定することで、レンズの光軸が定まる。図6において、座標系Σxyzのz軸が光軸である。
また、本実施例においては、いわゆるレンズの内部パラメーター(焦点距離、レンズのひずみ、レンズの光学中心のずれ)は既知とする。前述の通り、図6において単眼カメラのレンズの光学中心(座標系Σxyzの原点)と座標系Σuvの原点の距離が焦点距離であって、長さをfとする。また、レンズのひずみ及びレンズの光学中心のずれは無いものとする。
単眼カメラのレンズの光学中心を原点Pcとする三次元直交座標系Σxyzにおいて、単眼カメラのレンズの光学中心と像P’と目標とする動体(ゴルフボール)Pは同じ直線上にあることから次の式(数式7)が成り立つ。

P(X,Y,Z)=Pc(X0,Y0,Z0)+kRP’(u-u0,v-v0,f)

なお、本実施例では、P’のX要素及びY要素であるu-u0及びv-v0は検出部101が位置算出部102に引き渡す二次元位置の座標から求めることができ、fは焦点距離であって既知である。
前式(数式7)は、三次元直交座標系Σxyzにおける単眼カメラのレンズの光学中心と像P’と目標とする動体(ゴルフボール)Pを結ぶ三次元直交座標系ΣXYZにおける直線の式である。この数式7で示される直線が存在直線である。三次元直交座標系Σxyzの原点にレンズの光学中心を備えた単眼カメラで目標とする動体(ゴルフボール)Pを撮像したときに、画像フレーム401の像P’の二次元直交座標系Σuvでの二次元座標を決定できれば、数式7が算出でき、三次元直交座標系ΣXYZにおいて数式7で示される直線上に目標とする標とする動体(ゴルフボール)Pが存在する。
存在直線算出部107は、上述の存在直線算出処理(S1603)が行うことで、目標とする動体(ゴルフボール)についての数式7で示す存在直線を算出する。
次に、図6を用いて、存在面算出処理(S1604)が行う目標とする動体(ゴルフボール)についての存在面の算出について説明する。存在面算出部108が行う、存在面算出処理(S1604)では、パラメーターとして与えられた高さ(座標系ΣXYZでのZ要素の値)がHのとき、三次元直交座標系ΣXYZでのXY平面に平行な平面であって、Z=Hとなる平面を存在面として出力する。
図6では、目標とする動体(ゴルフボール)Pについて座標系ΣXYZでの三次元座標をP(X1,Y1,H)とする。この場合、座標系ΣXYZでのXY平面に平行な平面であって、Z=Hとなる平面が目標とする動体(ゴルフボール)Pについての存在面601となる。
このとき、目標とする動体(ゴルフボール)Pについての座標系ΣXYZでのZ要素の値Hが、実三次元空間での実体としての目標とする動体(ゴルフボール)Pについての座標系ΣXYZでのZ要素の値として正しい値であれば、目標とする動体(ゴルフボール)Pについての存在面601と、数式7で表される目標とする動体(ゴルフボール)Pについての存在直線との交点が目標とする動体(ゴルフボール)Pの実三次元空間での正しい三次元位置となる。
前述の通り、本実施例では、位置算出部102が実行する位置算出処理(S702)は、目標とする動体(ゴルフボール)の高さ(座標系ΣXYZでのZ要素の値)をパラメーターとして用いた二分探索によって、目標とする動体(ゴルフボール)の実三次元空間での三次元位置を算出する。図6を用いた上述の説明を受けて、あらためて本実施例における位置算出部102が実行する位置算出処理(S702)について説明すると、位置算出部102が実行する位置算出処理(S702)は、目標とする動体(ゴルフボール)の高さ(座標系ΣXYZでのZ要素の値)をパラメーターとして、存在面算出部108が存在面算出処理(S1604)によって算出したパラメーターとして与えられる高さでの存在面と、存在直線算出部107が存在直線算出処理(S1603)によって算出した存在直線の交点が、目標とする動体(ゴルフボール)の実三次元空間での正しい三次元位置とみなせる高さ(座標系ΣXYZでのZ要素の値)を、二分探索によって、探索することで、目標とする動体(ゴルフボール)の実三次元空間での三次元位置を算出する。
図16によるS1602の処理の説明に戻る。S1602の処理では、基準点の三次元座標を存在直線と存在面の交点から算出する。本実施例では、前述の通り、基準点の位置の高さ(座標系ΣXYZでのZ要素の値)はゴルフボールの半径の値rであって、S1601の処理において二分探索を行う際の高さの下限値をZminの初期値として設定されている。S1602の処理では、基準点の位置の高さ(座標系ΣXYZでのZ要素の値)である下限値Zminを、算出に必要な他の情報(画像フレーム上の二次元直交座標系Σuvのおける始点の像の二次元座標、始点付与された番号1、など)とともに存在直線算出部107と存在面算出部108に受け渡し、存在直線算出処理(S1603)と存在面算出処理(S1604)を実行して、算出された存在直線と存在面の交点の三次元座標を決定する。また、図3によって説明した通り、本実施例において座標系ΣXYZは、原点Oを、ゴルフボールと地表面の接点にとることから、基準点の位置の座標は(0,0,r)である。このことから、算出された存在直線と存在面の交点の三次元座標と、座標系ΣXYZの定義から定まる始点の位置の座標(0,0,r)を対比して補正することで算出精度を上げる処理を行ってもよい。S1602の処理で、基準点の三次元座標が算出されるとS1602の処理は終了し、S1605の処理が開始される。
S1605からS1613の処理までが、二分探索となる。位置算出部102は、位置算出処理(S702)によって、目標とする動体(ゴルフボール)が存在する可能性のある複数の三次元位置の候補から、二分探索によって、目標とする動体(ゴルフボール)が存在する可能性が最も高い三次元位置の候補を目標とする動体(ゴルフボール)の三次元位置として算出する。
S1605の処理では、二分探索の探索回数を示すカウンター(i)の値に1を加算してカウントアップする。次に、S1606の処理では、探索する目標とする動体(ゴルフボール)の実三次元空間での三次元位置の高さZiと(座標系ΣXYZでのZ要素の値)を、Zi=(Zmax+Zmin)/2と設定する。Ziの添え字iは、二分探索の探索回数を示す。二分探索の初期値においては、Ziは、単眼カメラのレンズの光学中心の高さと、地表面に接地したゴルフボールの中心の高さ(r)との中点の値となる。
S1607の処理では、終点の実三次元空間での三次元位置の高さ(座標系ΣXYZでのZ要素の値)がZiであるとして、存在直線と存在面の交点の三次元座標を算出する。これを仮終点とする。S1607の処理では、仮終点の位置の高さ(座標系ΣXYZでのZ要素の値)であるZi=(Zmax+Zmin)/2を、算出に必要な他の情報(画像フレーム上の二次元直交座標系Σuvのおける終点の像の二次元座標、終点に付与された番号N、など)とともに存在直線算出部107と存在面算出部108に受け渡し、存在直線算出処理(S1603)と存在面算出処理(S1604)を実行して、算出された存在直線と存在面の交点の三次元座標を決定する。S1607処理で、仮終点の三次元座標が算出されるとS1607の処理は終了し、S1608の処理が開始される。
図17は、S1608からS1611の処理を説明するための図である。図17で、L0は、目標とする動体(ゴルフボール)の実三次元空間での軌道である。軌道L0は、放物線の一部であるが、射出直後の短時間であることから位置算出処理(S702)では直線と近似して処理を行う。P0は、実三次元空間での基準点であり、P1は、実三次元空間での実際の始点であり、PNは、実三次元空間での実際の終点である。Pxは、x番目(xは、2以上、N-1以下の自然数)の画像フレームに撮像された実三次元空間での目標とする動体(ゴルフボール)である。
図17で、P’0は、画像フレーム401上の基準点P0の像であり、P’1は、画像フレーム401上の始点P1の像であり、P’Nは、画像フレーム401上の終点PNの像である。P’xは、画像フレーム401上のx番目の目標とする動体(ゴルフボール)Pxの像である。
図17で、Pcは、単眼カメラのレンズの光学中心であって、画像フレーム401上のx番目の目標とする動体(ゴルフボール)Pxの像P’xについての存在直線がLxである。
図17で、P”Nは、座標系ΣXYZでのZ要素の値がZi=(Zmax+Zmin)/2である仮終点である。図16で、S1608の処理では、始点P1と仮終点P”Nを結ぶ直線Lを算出する。図17で、仮終点P”Nと実三次元空間での実際の終点PNの三次元位置が一致していれば、直線L0と直線Lも一致するため、x番目の目標とする動体(ゴルフボール)Pxも直線L上に位置する。一方、仮終点P”Nと実三次元空間での実際の終点PNの三次元位置が一致していなければ、直線L0と直線Lも一致しないため、x番目の目標とする動体(ゴルフボール)Pxも直線L上に位置しない。
図16に戻り、S1609の処理では、図17に示す画像フレーム401上の基準点P’0と終点P’N以外の目標とする動体(ゴルフボール)Pxの像P’xについての存在直線Lxを、存在直線算出処理(S1603)を実行して、算出する。前述の通り、仮終点P”Nと実三次元空間での実際の終点PNの三次元位置が一致していなければ、直線L0と直線Lも一致しないため、x番目の目標とする動体(ゴルフボール)Pxも直線L上に位置しない。すなわち、S1609の処理で算出した存在直線Lxと、直線Lとは、実三次元空間で互いにねじれの位置にあって交わらない。図18は、この状態を表した図である。
S1610の処理では、直線Lが目標とする動体(ゴルフボール)の軌道であると仮定して、直線L上に画像フレーム401上の基準点P’0と終点P’N以外の目標とする動体(ゴルフボール)Pxの像P’xについて対応する点である仮存在点P”xの三次元座標を算出する。仮存在点P”xの三次元座標は、直線Lと存在直線Lxの距離が最小となる直線L上の点、すなわち、図18に示すように、直線L上の仮存在点P”xと存在直線Lx上の点Aが相互に垂線の足となるように仮存在点P”xの位置を決定して三次元座標を算出する。X=1からX=N-1までの仮存在点P”xの位置が算出されるとS1610の処理を終了し、S1611の処理に移る。
S1611とS1612が評価及び判定処理である。仮存在点P”xからなる直線Lと、目標とする動体(ゴルフボール)の実三次元空間での軌道である直線L0との一致度を評価して、仮存在点P”xを目標とする動体(ゴルフボール)の実際の三次元位置Pxとみなせるか判定する。
S1611の処理では、直線L上に位置する、基準点P0の三次元座標、仮終点P”Nの三次元座標、仮存在点P”x(xは、1以上、N-1以下の自然数)の三次元座標から、直線Lと、目標とする動体(ゴルフボール)の実際の軌道L0の一致度を評価する評価値を算出する。本実施例においては、仮存在点P”1から仮存在点P”N―1までの各仮存在点についての互いに隣り合った仮存在点の距離の平均値を評価値として算出する。
本実施例において、S1612の処理では、S1611の処理で算出した評価値と、仮存在点P”N―1と仮終点P”Nの距離を比較して判定する。具体的には、本実施例では、次の式(数式8)が成立した場合に、仮存在点P”xからなる直線Lと、目標とする動体(ゴルフボール)の実三次元空間での実際の軌道である直線L0との一致度が高いと判定する。なお、式(数式8)では、仮存在点P”N―1と仮終点P”Nの距離を「仮終点距離」と記述している。

|(仮終点距離―評価値)/仮終点距離|×100<1
S1612の処理で、直線Lと、目標とする動体(ゴルフボール)の実際の軌道L0の一致度が高いと判定された場合、仮存在点P”xの三次元座標を、対応する目標とする動体(ゴルフボール)Pxの三次元座標として算出し、位置算出処理(S702)を終了する。一方、直線Lと、目標とする動体(ゴルフボール)の実際の軌道L0の一致度が高くないと判定された場合、S1613の処理が開始される。
S1613の処理では、S1612の処理での評価値の評価に基づいて、二分探索を行う際の高さの上限値Zmax、又は、高さの下限値Zminの値を変更する。仮存在点P”N―1と仮終点P”Nの距離(仮終点距離)が、評価値(仮存在点P”1から仮存在点P”N―1までの各仮存在点についての互いに隣り合った仮存在点の距離の平均値)より小さいことで、一致度が高くないと判定された場合は、高さの上限値Zmaxの値を仮終点の高さ(座標系ΣXYZでのZ要素の値)Ziの値に変更する。一方、仮終点距離が、評価値より大きいことで、一致度が高くないと判定された場合は、高さの下限値Zminの値を仮終点の高さ(座標系ΣXYZでのZ要素の値)Ziの値に変更する。
S1613の処理で、二分探索を行う際の高さの上限値Zmax、又は、高さの下限値Zminの値を変更されると、S1613の処理は終了し、S1605の処理から二分探索を引き続き実行する。
なお、ここで開示したS1611からS1613の評価及び判定の処理は例示であって、適切な評価及び判定が可能であれば他の方法でもよく、本願発明においてこれに限るものではない。
図7に戻り、位置算出処理(S702)が終了すると、初速度算出部103が初速度算出処理(S703)を、打ち出し角度算出部104が打ち出し角度算出処理(S704)を、それぞれ実行する。初速度算出処理(S703)と打ち出し角度算出処理(S704)は実施例1と同様であるため説明を割愛する。
算出装置1は、初速度算出部103が初速度算出処理(S703)で算出した初速度と、打ち出し角度算出部104が打ち出し角度算出処理(S704)で算出した打ち出し角度を出力する。
算出装置1は、図19に示すように、軌道算出部107、飛距離算出部108を備えてもよい。軌道算出部107と飛距離算出部108の機能は実施例1と同様であるため説明を割愛する。
以上が、算出装置についての説明である。
次に、算出システムについて説明する。算出システムは、目標とする動体を上方向から撮像する位置に配置された単眼カメラと、上述の算出装置と、からなる。単眼カメラと算出装置は、互いに分離していてもよいし、一体としてシステムを構成してもよい。単眼カメラと算出装置が互いに分離しているシステムでは、単眼カメラと算出装置が有線又は無線による通信ネットワークによって接続されて撮像データを逐次又は一旦蓄積した後に受け渡すことでもよいし、単眼カメラで撮像した撮像データを記憶媒体等に保管してから算出装置に受け渡すことでもよい。また、単眼カメラと算出装置を一体としたシステムでは、例えば、単眼カメラを内蔵したスマートフォンなどの情報機器に後述の算出プログラムをアプリケーションとして提供して算出装置として機能させることで単眼カメラと算出装置を一体としたシステムを構成するなどがある。
次に、コンピュータを算出装置として機能させるための算出プログラムについて説明する。コンピュータの構成は、図2に示す通りである。
算出プログラムは、メインモジュール、入出力モジュール及び演算処理モジュールを備える。メインモジュールは、処理を統括的に制御する部分である。入出力モジュールは、画像データなどの入力情報をコンピュータに取得させ、算出した情報を数値や画像でコンピュータに出力させる。演算処理モジュールは、検出モジュール、位置算出モジュール、初速度算出モジュール、打ち出し角度算出モジュール、軌道算出モジュール、飛距離算出モジュール、存在直線算出モジュール及び存在面算出モジュールを備える。メインモジュール、入出力モジュール及び演算処理モジュールを実行させることにより実現される機能は、算出装置1の検出部101、位置算出部102、初速度算出部103、打ち出し角度算出部104、軌道算出部105及び飛距離算出部106に加え、存在直線算出部107及び存在面算出部108の機能とそれぞれ同様である。
算出プログラムは、例えば、ROM等の記憶媒体又は半導体メモリによって提供される。また、算出プログラムは、ネットワークを介して提供されてもよい。
以上が、実施例2の説明である。
以上、本願に係る算出装置、算出システム、算出方法及び算出プログラムによれば、ゴルフなどの運動競技において、ゴルフクラブなどの用具で打ち上げられたボールなど目標とする動体の初速度と打ち出し角度を、背景から目標とする動体の検出が容易な上方向から撮像した複数の画像フレームの情報から算出することができる。これにより、分解能の低い単眼カメラによって撮像された画像からであっても、目標とする物体の軌道や飛距離を精度高く算出することができる。
1 算出装置
101 検出部
102 位置算出部
103 初速度算出部
104 打ち上げ角度算出部
105 軌道算出部
106 飛距離算出部
107 存在直線算出部
108 存在面算出部
201 中央演算装置(CPU)
202 入力装置
203 出力装置
204 主記憶装置(RAM/ROM)
205 補助記憶装置
301 地表面に接しているゴルフボール
302 ゴルファー
401 画像フレーム
402 時刻0での目標とする動体の像
403 射出された目標とする動体の像が画像フレーム上を移動する方向
501 矢印502と対比する矢印
502 矢印501と対比する矢印
503 単眼カメラ
504 単眼カメラのレンズの光学中心
601 存在平面
801 地表面
802 地表面に接して置かれた目標とする動体(基準点)
803 地表面に接して置かれた目標とする動体が射出された軌道
804 単眼カメラのレンズの光学中心
805 終点
806 始点
1201 単眼カメラのレンズの光学中心から目標とする動体の軌道への垂線

Claims (11)

  1. 単眼カメラで上方向から一定の時間間隔で撮像した連続する複数の画像フレームの情報から、射出された目標とする動体の初速度と打ち出し角度を算出する算出装置であって、
    前記画像フレームの情報から目標とする動体を検出する検出部と、
    前記目標とする動体の運動を等速直線運動と近似して、前記単眼カメラのレンズの光学中心の三次元位置と、各画像フレーム内の前記検出部によって検出された目標とする動体の各像の二次元位置と、から前記目標とする動体の三次元位置を算出する位置算出部と、
    前記位置算出部が算出した前記目標とする動体の三次元位置と、画像フレームの情報と、から前記目標とする動体の初速度を算出する初速度算出部と、
    前記位置算出部が算出した前記目標とする動体の三次元位置と、画像フレームの情報と、から前記目標とする動体の打ち出し角度を算出する打ち出し角度算出部と、
    を備えることを特徴とする算出装置。
  2. 前記位置算出部は、
    前記画像フレームに撮像された前記目標とする動体の像についての三次元位置と、前記単眼カメラのレンズの光学中心の三次元位置と、を結んだ存在直線を算出する存在直線算出部と、
    前記目標とする動体が存在する可能性のある存在面を算出する存在面算出部と、
    を備え、
    前記存在直線算出部が算出した前記存在直線と、前記存在面算出部が算出した前記存在面と、が交わる点の三次元位置を、前記目標とする動体の三次元位置として算出する、
    ことを特徴とする請求項に記載の算出装置。
  3. 前記位置算出部は、
    前記目標とする動体が存在する可能性のある複数の三次元位置の候補から探索アルゴリズムによって前記目標とする動体が存在する可能性が最も高い三次元位置の候補を前記目標とする動体の三次元位置として算出する、
    ことを特徴とする請求項に記載の算出装置。
  4. 前記位置算出部は、
    前記探索アルゴリズムは、前記画像フレームに撮像された前記目標とする動体が存在する可能性のある三次元位置の候補の三次元距離から求めた評価値を評価することによって、前記目標とする動体が存在する可能性が最も高い三次元位置の候補を探索する、
    ことを特徴とする請求項に記載の算出装置。
  5. 前記初速度算出部が算出した前記目標とする動体の初速度と、前記打ち出し角度算出部が算出した前記目標とする動体の打ち出し角度と、から前記目標とする動体の三次元での軌道を算出する軌道算出部を備える、
    ことを特徴とする請求項1から請求項のいずれか1項に記載の算出装置。
  6. 前記初速度算出部が算出した前記目標とする動体の初速度と、前記打ち出し角度算出部が算出した前記目標とする動体の打ち出し角度と、から前記目標とする動体の飛距離を算出する飛距離算出部を備える、
    ことを特徴とする請求項1から請求項のいずれか1項に記載の算出装置。
  7. 目標とする動体を上方向から撮像する位置に配置された単眼カメラと、
    請求項1から請求項のいずれか1項に記載の算出装置と、
    からなることを特徴とする算出システム。
  8. 目標とする動体を上方向から撮像する位置に配置された単眼カメラと、
    請求項5に記載の算出装置と、
    からなることを特徴とする算出システム。
  9. 目標とする動体を上方向から撮像する位置に配置された単眼カメラと、
    請求項6に記載の算出装置と、
    からなることを特徴とする算出システム。
  10. 単眼カメラで上方向から一定の時間間隔で撮像した連続する複数の画像フレームの情報から、射出された目標とする動体の初速度と打ち出し角度を算出する算出方法であって、
    前記画像フレームの情報から目標とする動体を検出する検出ステップと、
    前記目標とする動体の運動を等速直線運動と近似して、前記単眼カメラのレンズの光学中心の三次元位置と、各画像フレーム内の前記検出ステップによって検出された目標とする動体の各像の二次元位置と、から前記目標とする動体の三次元位置を算出する位置算出ステップと、
    前記位置算出ステップで算出した前記目標とする動体の三次元位置と、画像フレームの情報と、から前記目標とする動体の初速度を算出する初速度算出ステップと、
    前記位置算出ステップで算出した前記目標とする動体の三次元位置と、画像フレームの情報と、から前記目標とする動体の打ち出し角度を算出する打ち出し角度算出部ステップと、
    を備えことを特徴とする算出方法。
  11. 単眼カメラで上方向から一定の時間間隔で撮像した連続する複数の画像フレームの情報から、射出された目標とする動体の初速度と打ち出し角度を算出する算出プログラムであって、
    前記画像フレームの情報から目標とする動体を検出する検出ステップと、
    前記目標とする動体の運動を等速直線運動と近似して、前記単眼カメラのレンズの光学中心の三次元位置と、各画像フレーム内の前記検出ステップによって検出された目標とする動体の各像の二次元位置と、から前記目標とする動体の三次元位置を算出する位置算出ステップと、
    前記位置算出ステップで算出した前記目標とする動体の三次元位置と、画像フレームの情報と、から前記目標とする動体の初速度を算出する初速度算出ステップと、
    前記位置算出ステップで算出した前記目標とする動体の三次元位置と、画像フレームの情報と、から前記目標とする動体の打ち出し角度を算出する打ち出し角度算出部ステップと、
    をコンピュータに実行させることを特徴とする算出プログラム。
JP2022537749A 2022-01-10 2022-01-10 算出装置、算出システム、算出方法、算出プログラム Active JP7165375B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/000444 WO2023132087A1 (ja) 2022-01-10 2022-01-10 算出装置、算出システム、算出方法、算出プログラム

Publications (3)

Publication Number Publication Date
JP7165375B1 true JP7165375B1 (ja) 2022-11-04
JPWO2023132087A1 JPWO2023132087A1 (ja) 2023-07-13
JPWO2023132087A5 JPWO2023132087A5 (ja) 2023-12-06

Family

ID=83897807

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022537749A Active JP7165375B1 (ja) 2022-01-10 2022-01-10 算出装置、算出システム、算出方法、算出プログラム

Country Status (4)

Country Link
US (1) US20230218946A1 (ja)
JP (1) JP7165375B1 (ja)
KR (1) KR20230108724A (ja)
WO (1) WO2023132087A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0824389A (ja) * 1994-07-18 1996-01-30 Bridgestone Sports Co Ltd ボールの運動状態自動計測方法
JP2005529339A (ja) * 2002-06-06 2005-09-29 ウィントリス エンジニアリング コーポレイション 飛行パラメータ測定システム
JP2010082430A (ja) * 2008-09-02 2010-04-15 Yokohama Rubber Co Ltd:The ゴルフクラブの選択方法およびゴルフクラブの選択システム
JP2013036846A (ja) * 2011-08-08 2013-02-21 Casio Comput Co Ltd 撮像装置及びプログラム
US20190266735A1 (en) * 2016-11-10 2019-08-29 Formalytics Holdings Pty Ltd Measuring a property of a trajectory of a ball
JP2021103483A (ja) * 2019-12-25 2021-07-15 有限会社Amplus 画像処理装置および方法並びにプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7437732B2 (ja) 2019-12-16 2024-02-26 日本メナード化粧品株式会社 表皮ターンオーバー遅延の遺伝的素因の判定方法
JP7083332B2 (ja) 2019-12-27 2022-06-10 楽天グループ株式会社 画像処理装置、画像処理方法、及びプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0824389A (ja) * 1994-07-18 1996-01-30 Bridgestone Sports Co Ltd ボールの運動状態自動計測方法
JP2005529339A (ja) * 2002-06-06 2005-09-29 ウィントリス エンジニアリング コーポレイション 飛行パラメータ測定システム
JP2010082430A (ja) * 2008-09-02 2010-04-15 Yokohama Rubber Co Ltd:The ゴルフクラブの選択方法およびゴルフクラブの選択システム
JP2013036846A (ja) * 2011-08-08 2013-02-21 Casio Comput Co Ltd 撮像装置及びプログラム
US20190266735A1 (en) * 2016-11-10 2019-08-29 Formalytics Holdings Pty Ltd Measuring a property of a trajectory of a ball
JP2021103483A (ja) * 2019-12-25 2021-07-15 有限会社Amplus 画像処理装置および方法並びにプログラム

Also Published As

Publication number Publication date
US20230218946A1 (en) 2023-07-13
JPWO2023132087A1 (ja) 2023-07-13
KR20230108724A (ko) 2023-07-18
WO2023132087A1 (ja) 2023-07-13

Similar Documents

Publication Publication Date Title
Svärm et al. City-scale localization for cameras with known vertical direction
CN107481270B (zh) 乒乓球目标跟踪和轨迹预测方法、装置、存储介质和计算机设备
US10996062B2 (en) Information processing device, data management device, data management system, method, and program
Svarm et al. Accurate localization and pose estimation for large 3d models
CN108986164B (zh) 基于图像的位置检测方法、装置、设备及存储介质
CN105806315B (zh) 基于主动编码信息的非合作目标相对测量系统及测量方法
JP6736257B2 (ja) 情報処理装置、情報処理方法、プログラム
Goncalves et al. A visual front-end for simultaneous localization and mapping
JP2014102608A (ja) 3次元物体認識装置および3次元物体認識方法
US11062521B2 (en) Virtuality-reality overlapping method and system
CN103795935B (zh) 一种基于图像校正的摄像式多目标定位方法及装置
US11501462B2 (en) Multi-view three-dimensional positioning
CN112184811B (zh) 单目空间结构光系统结构校准方法及装置
JP2017117386A (ja) 自己運動推定システム、自己運動推定システムの制御方法及びプログラム
JP2019114103A (ja) 物体認識処理装置、物体認識処理方法及びプログラム
US20230005216A1 (en) Three-dimensional model generation method and three-dimensional model generation device
US10623629B2 (en) Imaging apparatus and imaging condition setting method and program
CN111325828B (zh) 一种基于三目相机的三维人脸采集方法及装置
CN109902675B (zh) 物体的位姿获取方法、场景重构的方法和装置
JP5267100B2 (ja) 運動推定装置及びプログラム
JP7165375B1 (ja) 算出装置、算出システム、算出方法、算出プログラム
CN110851978B (zh) 一种基于可见性的摄像机位置优化方法
Li et al. A camera on-line recalibration framework using SIFT
JP2021021577A (ja) 画像処理装置及び画像処理方法
Jiang et al. A ball-shaped target development and pose estimation strategy for a tracking-based scanning system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220728

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220729

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220729

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221005

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221014

R150 Certificate of patent or registration of utility model

Ref document number: 7165375

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150