WO2017183280A1 - 画像認識装置及びプログラム - Google Patents

画像認識装置及びプログラム Download PDF

Info

Publication number
WO2017183280A1
WO2017183280A1 PCT/JP2017/006415 JP2017006415W WO2017183280A1 WO 2017183280 A1 WO2017183280 A1 WO 2017183280A1 JP 2017006415 W JP2017006415 W JP 2017006415W WO 2017183280 A1 WO2017183280 A1 WO 2017183280A1
Authority
WO
WIPO (PCT)
Prior art keywords
prediction process
image
change
prediction
neural network
Prior art date
Application number
PCT/JP2017/006415
Other languages
English (en)
French (fr)
Inventor
田中 伸治
Original Assignee
シャープ株式会社
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 シャープ株式会社 filed Critical シャープ株式会社
Publication of WO2017183280A1 publication Critical patent/WO2017183280A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Definitions

  • the present invention relates to an image recognition apparatus or the like provided with object recognition means for recognizing an object based on a prediction process from an input image.
  • Patent Document 1 discloses an invention capable of recognizing a plant as an object and displaying information such as a type of wild grass or a plant dictionary.
  • Patent Document 2 information on a specific object designated from those displayed on the display means is displayed in different display formats corresponding to the state of the object on the display screen.
  • An information display system to be displayed on a means and a portable information terminal employing the information display system are disclosed.
  • the object is recognized / predicted and the name of the object is displayed, but in recognition, a name different from the original object name may be obtained. is there.
  • the object is recognized incorrectly, there is a problem that only the same name is returned regardless of how many times the user recognizes it.
  • the present invention aims to make it possible to easily switch the recognition / prediction method without significant software changes when recognizing / predicting an object.
  • An object of the present invention is to provide an image recognition device and the like that can be used.
  • an image recognition apparatus includes: In the image recognition apparatus provided with the object recognition means for recognizing the object based on the prediction process from the input image, When a motion is detected from the input image, a prediction process change determination unit that determines whether or not the prediction process needs to be changed; When it is determined that the prediction process needs to be changed, prediction process changing means for changing to a prediction process different from the prediction process; It is characterized by providing.
  • the program of the present invention From the input image, to a computer that can execute the object recognition function that recognizes the object based on the prediction process, When a motion is detected from the input image, a prediction process change determination function that determines whether or not the prediction process needs to be changed; When it is determined that the prediction process needs to be changed, a prediction process change function for changing to a prediction process different from the prediction process; It is characterized by realizing.
  • an image recognition apparatus including an object recognition unit that recognizes an object based on a prediction process from an input image
  • a motion is detected from the input image, and the change of the prediction process is performed. If it is determined that it is necessary, the image processing is changed to a prediction process different from the current prediction process, and image recognition is performed again.
  • the object is predicted and recognized using a different prediction processing method. Thereby, the user can switch the prediction process with an easy operation.
  • the image recognition device of the present invention is applied to a portable terminal device (for example, a mobile phone, a smartphone, a tablet, or the like) capable of making a call. That is, by executing the image recognition program on the terminal device, the image recognition function is realized and the image recognition device is realized.
  • a portable terminal device for example, a mobile phone, a smartphone, a tablet, or the like
  • the terminal device may be another device.
  • it may be a terminal device such as the mobile phone / smartphone described above, a tablet terminal, an electronic dictionary or an electronic book terminal, or a terminal device such as an in-vehicle camera or a computer.
  • FIG. 1 is a diagram for explaining the entire system in the present embodiment.
  • the terminal device 10 is configured to be connectable to the server 20 via the network NW.
  • the terminal device 10 and the network NW are connected by wireless communication.
  • it may be a WLAN such as IEEE 802.11a / b / g / n, or a mobile communication network represented by 3G or LTE.
  • it is good also as connecting to other apparatuses and connection apparatuses, such as an access point, by near field communication, and connecting to the network NW.
  • it may be connected by a wired LAN.
  • the server 20 is a device that can realize, for example, image recognition processing and prediction processing. That is, the image recognition process in the present embodiment may be performed by the terminal device 10 or the server 20. Note that the server 20 is not required when the processing is completed in the terminal device 10. In the present embodiment, for the sake of explanation, it will be described as being performed by the terminal device 10, but processing as necessary may be performed by the server.
  • the terminal device 10 is provided with a camera (not shown) on the back surface and the front surface, so that the object P can be photographed. That is, when the object P is included in an image captured by the camera, the object P can be recognized (for example, the name of the object P is recognized).
  • the object P is displayed in the area R20 on the display screen W10, and the name of the object P is displayed in the area R10.
  • the user can recognize what the object currently being photographed is.
  • the name of the object P is displayed, but it is not always necessary. For example, by simply recognizing the name of an object, it is possible to convey the name to the user by voice, tag an image, or perform a search process from the displayed object. .
  • the recognition of whether or not the captured object is recognized as described above, and whether or not the pattern of the object is determined in advance and the captured object corresponds to the pattern. May be.
  • the terminal device 10 includes a control unit 100, an image input unit 110, a prediction processing unit 120, a processing change determination unit 125, a communication unit 130, a storage unit 140, and a display unit 150.
  • the operation input unit 160 and the telephone function unit 170 are provided.
  • the control unit 100 is a functional unit for controlling the entire terminal device 10.
  • the control unit 100 realizes various functions by reading and executing various programs stored in the storage unit 140, and is configured by, for example, a CPU (Central Process Unit).
  • a CPU Central Process Unit
  • the image input unit 110 is a functional unit for capturing an image and inputting the captured image as image data to the terminal device 10.
  • it is configured by a camera or the like, and an image is input from the outside by an imaging device or the like, and the input image data is output to a prediction processing unit 120 described later.
  • the image input unit 110 may be an image input from another device instead of the camera.
  • the terminal device 10 and a camera device may be connected and image data captured by the camera device may be used.
  • the prediction processing unit 120 is a functional unit for predicting the name and attribute of an object included (shown) in input image data.
  • deep learning deep neural network
  • this embodiment is also used as an example in this embodiment. The processing in this deep learning will be briefly described with reference to FIG.
  • the prediction processing unit 120 inputs the input image data (signal) to a neural network including a plurality of layers and neurons included in each layer. Each neuron receives signals from a plurality of other neurons and outputs the processed signals to another plurality of neurons.
  • the neural network has a multilayer structure, they are called an input layer, an intermediate layer (hidden layer), and an output layer in the order in which signals flow.
  • a neural network having a plurality of intermediate layers is called a deep neural network, and a machine learning method using this is called deep learning.
  • Convolutional Neural Network convolutional neural network that has a convolutional operation provides high accuracy in image recognition.
  • Image data is subjected to various operations (convolution operation, pooling operation, normalization operation, matrix operation, etc.) on the neurons of each layer of the neural network, flows while changing the shape, and a plurality of signals are output from the output layer.
  • various operations convolution operation, pooling operation, normalization operation, matrix operation, etc.
  • a plurality of output values from the neural network are each associated with a name, and the name associated with the output value with the largest value is predicted as the name of the object.
  • a name or tag may be predicted from the output of the classifier by passing a plurality of output values through the classifier without being directly linked to the name.
  • Parameters that are coefficients used for various computations of neural networks are input to a neural network in advance a number of images and labels indicating what the objects appear in the images, and the error between the output value and the correct value is calculated. This is determined by propagating the neural network in the reverse direction by the error back propagation method (back propagation) and updating the parameters of the neurons in each layer many times. The process of updating and determining parameters is called learning.
  • the process change determination unit 125 is a functional unit for determining whether a process change is necessary from an input image. For example, when a user is shooting an image with a camera, the shooting range is removed from the object by changing the direction of the camera, and when the object is copied again, the movement is determined from the output value of the neural network, It is determined whether or not a process change is necessary. By using an output value of an existing process, it is possible to make a determination without a large software change.
  • the prediction processing unit 120 and the process change determination unit 125 may be provided as a program or may be provided as hardware.
  • the convolutional neural network performs a large number of convolution operations, matrix operations, and the like, so that hardware such as a GPU (GraphicsGraphProcessing Unit) can speed up the processing.
  • the prediction processing program and the processing change determination program are stored in the storage unit 140, and the control unit 100 reads and executes the same function to realize the same function.
  • each process of the prediction processing unit 120 and the process change determination unit 125 may be realized by the server 20.
  • image data may be transmitted from the terminal device 10 to the server 20 and the processing result may be received.
  • the communication unit 130 is a functional unit that provides a function of connecting to the network NW.
  • it may be a communication module for connecting to a WLAN or a communication module for connecting to an LTE communication network.
  • the storage unit 140 is a functional unit in which various programs necessary for the operation of the terminal device 10 and various data are stored.
  • the storage unit 140 includes, for example, a semiconductor memory, an HDD (Hard Disk Drive), or the like.
  • the display unit 150 is a functional unit for displaying various information and image data.
  • it is composed of a liquid crystal display (LCD) or an organic EL panel.
  • the display unit 150 may be an external display device connected by wire such as wireless or HDMI.
  • the operation input unit 160 is a functional unit for a user to input an operation instruction to the terminal device 10.
  • a software key using a touch panel and a hardware key are used. It may be formed integrally with the display unit 150.
  • the telephone function unit 170 is a functional unit used when the terminal device 10 functions as a telephone.
  • the telephone function unit includes, for example, a voice input / output unit. Since the telephone function is conventional, the description thereof is omitted. Note that in the case of a terminal having no telephone function, such as some tablets, the telephone function unit 170 may not be provided.
  • the terminal device 10 may not necessarily have.
  • the operation input unit 160 may be realized by another input / output device (such as a mouse connected to USB or Bluetooth).
  • the image input unit 110 may also transfer an image from a camera built in the smart watch, for example.
  • step S102 an object is photographed (step S102), and image data is stored in the storage unit 140.
  • This image data may be stored in the storage unit 140 as an image file or may be temporarily stored.
  • an object prediction process is executed by the prediction processing unit 120 based on the image data (step S104). Thereby, the name of the target object included in the image data is predicted.
  • step S106 it is determined whether or not a change is detected.
  • a change is detected in the present embodiment.
  • the terminal device 10 image photographs the target object P2.
  • the object P2 is included in the shooting range R100, and a preview display is possible on the display unit of the terminal device 10.
  • the object P2 is once removed from the imaging range R100 by changing the orientation and position of the camera of the terminal device 10. And as shown in FIG.5 (c), the terminal device 10 is moved again so that the target object P2 may be included in imaging
  • the image data input to the neural network changes.
  • the value output from the neural network also changes.
  • FIG. 6 is a diagram schematically showing an output value when the object A and a different object B are copied.
  • the output i is the largest among the n-dimensional output values, but when the object B is copied, the output j is the largest.
  • the output values of the neural network it becomes possible to detect that the object / range captured by the camera has changed and has changed.
  • step S106 when the object is determined (for example, the user performs a determination process that the name of the object is acceptable), the object is recognized, and the present process is terminated (step S106; No-> step S120; Yes). Until the object is determined, for example, the above-described processing is repeatedly executed (Step S106; No ⁇ Step S120; No ⁇ Step S102).
  • a prediction process change determination process is executed (step S108).
  • the first determination method is used as the prediction process change determination process in the present embodiment.
  • the first determination method changes from a state in which the value of the output i is the largest among the n-dimensional output values of the neural network, and changes after passing through the threshold, and then the value of the output i again passes through the threshold and increases This is a method for determining that the prediction process needs to be changed.
  • the threshold value is, for example, an output value that represents the reliability of the name associated with each output value. If the reliability level is 50%, an intermediate value between the maximum value and the minimum value is set as the threshold value. do it.
  • FIG. 7A For example, looking at the largest output i in FIG. 7A, the threshold value S is currently exceeded.
  • FIG. 7B shows a different object copied (the object copied in FIG. 7A is excluded from the shooting object). The output i changed below the threshold value S.
  • FIG. 7C shows the object again.
  • the output i again exceeds the threshold value S. In this case, it is determined that the prediction process needs to be changed.
  • the threshold value may be different from the threshold value in the decreasing direction and the threshold value in the increasing direction. By using different threshold values for falling and rising, it is possible to suppress erroneous determination when the camera moves unintentionally. Further, the threshold value may be an absolute value or a relative value from the maximum value or average value of each output value.
  • step S102 when it is determined that the prediction process does not need to be changed, the process is repeated from step S102 (step S110; No ⁇ step S102).
  • step S110 when it is determined that the change of the prediction process is necessary, the prediction change process is executed (step S110; Yes ⁇ step S112). As a result, the prediction processing method is changed.
  • the first change method is used as the change method in the prediction change process in the present embodiment.
  • the parameters of each neuron in the neural network are changed.
  • the parameter is a coefficient of each calculation performed in the neural network.
  • the parameter is also called Weight or Bias.
  • Dropout is a process of invalidating neuron output at a certain rate.
  • the change may be displayed or notified using a notification means such as a sound or a vibration.
  • the user can omit the name input when searching for the name with a search engine or obtaining detailed information about the name by obtaining an appropriate name of the object.
  • the target object recognized first is different or if it is desired to obtain a different name
  • the target object is once removed from the shooting target range and set as a shooting target again.
  • a different name is displayed by changing the method of predicting the object. Therefore, an appropriate name may be obtained by displaying a name different from the first.
  • the second determination method is determined by looking at the order of n-dimensional output values. For example, when the value of the output i is the largest and falls from the first place to below the x place and becomes the x place again, it is determined that the prediction process needs to be changed.
  • the threshold value of the ranking may be different from the threshold value of the ranking when falling and the threshold value of ranking when rising.
  • each output value is stored sequentially (the stored time is assumed to be t0), and the difference between each output value at the subsequent t1 time and each output value at the t0 time (L1 error, L2 error, cross entropy error, etc.) ) Changes to a threshold value or more, and when the difference between each output value for the subsequent t2 time and each output value for the t0 time is less than the threshold value, it is determined that the prediction process needs to be changed.
  • the L1 error is a sum of absolute values of differences between output values at the same position for output values at different times.
  • the threshold value when the difference becomes larger and the threshold value when the difference becomes smaller may be different.
  • the second change method changes the network (graph) of the neural network.
  • the parameters are changed together.
  • the change method can be changed in various ways, such as changing the number of convolutional layers, adding a new layer, changing the dimension of signals in the middle of the network.
  • 5th Embodiment demonstrates the case where it changes using the 3rd change method instead of the 1st change method demonstrated in 1st Embodiment.
  • the third change method is a method of changing the image processing before entering the neural network.
  • an object recognition image processing unit 200 is provided before an image is input to the neural network.
  • the object recognition image processing unit 200 performs object recognition, and inputs each recognized range to a neural network to perform prediction. At this time, the object recognition algorithm and parameters are changed.
  • ⁇ Object recognition algorithms include Selective Search and Objectness. By changing the algorithm and parameters for object recognition, the range to be input to the neural network changes.
  • the object recognition image processing unit 200 cuts out an object-recognized region in the image data, and performs prediction processing individually (FIG. 10). Object recognition increases the accuracy of predicting the names of objects, and also provides the effects of being able to predict the names of a plurality of objects.
  • image processing different from object recognition various processes such as adding or changing the processing to enlarge / reduce the image data before inputting the image into the neural network, changing the contrast or brightness of the image data, etc. Changes are possible.
  • the fourth change method is a method of changing the subsequent processing of the neural network.
  • a classification processing unit 400 (classifier) is provided after the neural network.
  • a process is performed in which a name to be predicted is not determined from the output value of the neural network, but the output value is applied to the classification processing unit 400 to predict the name associated with the classified class.
  • the algorithm and parameters of the classification processing unit 400 are changed.
  • these algorithms include SVM (Support Vector Machine) and random forest.
  • the results of prediction process changes made in the past are stored, and the prediction process is changed to a prediction process with a high result.
  • the score of the prediction process before the change is subtracted, and if image recognition is determined, then Add a score for the prediction process. If the prediction process needs to be changed using this score, it is preferentially changed to a prediction process with a high score.
  • the determination method and the change method of each embodiment may be combined.
  • the second determination method and the fourth change method may be combined, or the third determination method and the second change method may be combined.
  • the determination method and the change method may be applied in a superimposed manner.
  • both the first determination method and the second determination method may be used, or all the methods may be applied as one process.
  • the determination method and the change method can be freely combined and implemented within a range where consistency can be obtained regardless of the embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

入力された画像から、予測処理に基づいて対象物を認識する対象物認識手段を備えた画像認識装置において、入力された画像から動きが検知された場合には、前記予測処理の変更が必要か否かを判定する予測処理変更判定手段と、前記予測処理の変更が必要と判定された場合には、前記予測処理と異なる予測処理に変更をする予測処理変更手段と、を備える。これにより、対象物を認識・予測する場合に、認識・予測方法を容易に切り替えることを可能とすることができる画像認識装置等を提供することとなる。

Description

画像認識装置及びプログラム
 本発明は、入力された画像から、予測処理に基づいて対象物を認識する対象物認識手段を備えた画像認識装置等に関する。
 近年、撮影又は入力された画像に写っている対象物がどのような物かを予測して、表示するような画像認識装置が知られている。例えば、特許文献1では、対象物として植物を認識し、野草の種類や植物辞典に掲載されているような情報を表示することが可能な発明が開示されている。
 また、特許文献2には、表示手段に表示されているものの中から指定した特定の対象物についての情報を、その対象物の表示画面上での状態に対応して、異なる表示形式で情報表示手段に表示させる情報表示システム、およびその情報表示システムを採用した携帯情報端末が開示されている。
特開2002-203242号公報 特開2009-301485号公報
 上述したように、対象物が何かを認識・予測し、対象物の名称を表示させたりすることは開示されているが、認識において本来の対象物の名称とは異なる名称が得られる場合がある。対象物の認識が間違えている場合、利用者が何度認識させても、同じ名称しか返ってこないという問題点があった。
 ここで、予測処理を変更することが考えられるが、この場合、利用者が操作により変更を行う必要があり、操作が煩わしくなってしまうという問題点が生じていた。
 上述した課題に鑑み、本発明が目的とするのは、対象物を認識・予測する場合に、認識・予測方法を容易に、大きなソフトウェアの変更を伴わずに、切り替えることを可能とすることができる画像認識装置等を提供することを目的とする。
 上述した課題を解決するために、本発明の画像認識装置は、
 入力された画像から、予測処理に基づいて対象物を認識する対象物認識手段を備えた画像認識装置において、
 入力された画像から動きが検知された場合には、前記予測処理の変更が必要か否かを判定する予測処理変更判定手段と、
 前記予測処理の変更が必要と判定された場合には、前記予測処理と異なる予測処理に変更をする予測処理変更手段と、
 を備えることを特徴とする。
 本発明のプログラムは、
入力された画像から、予測処理に基づいて対象物を認識する対象物認識機能を実行可能なコンピュータに、
 入力された画像から動きが検知された場合には、前記予測処理の変更が必要か否かを判定する予測処理変更判定機能と、
 前記予測処理の変更が必要と判定された場合には、前記予測処理と異なる予測処理に変更をする予測処理変更機能と、
 を実現させることを特徴とする。
 本発明によれば、入力された画像から、予測処理に基づいて対象物を認識する対象物認識手段を備えた画像認識装置において、入力された画像から動きが検知され、前記予測処理の変更が必要と判定された場合には、現在の予測処理と異なる予測処理に変更をし、再度画像認識を行うことになる。これにより、例えばカメラを動かすことによって、対象物を含む画像の動きが検出されると、異なる予測処理方法を用いて対象物を予測・認識することになる。これにより、利用者は容易な動作で、予測処理を切り替えるといったことが可能となる。
第1実施形態における全体を説明するための図である。 第1実施形態における端末装置の機能構成を説明するための図である。 ニューラルネットワークの説明をするための図である。 第1実施形態における処理の流れを説明するためのフローチャートである。 第1実施形態における動作の一例を説明するための図である。 第1実施形態における動作の一例を説明するための図である。 第1実施形態における動作の一例を説明するための図である。 第4実施形態における動作の一例を説明するための図である。 第5実施形態における物体認識画像処理部の一例を示した図である。 第5実施形態における動作の一例を説明するための図である。 第6実施形態における分類処理部の一例を示した図である。
 以下に、本発明の実施の形態について、図を参照しながら詳細に説明する。本実施形態では、本発明の画像認識装置を、通話可能な携帯型の端末装置(例えば、携帯電話やスマートフォン、タブレット等)に適用した場合について説明する。すなわち、画像認識プログラムを、端末装置で実行することにより、画像認識機能が実現され画像認識装置として実現されることとなる。
 なお、端末装置としては、他の装置であってもよいことは勿論である。例えば、上述した携帯電話・スマートフォンや、タブレット端末、電子辞書や電子書籍端末といった端末装置であったり、車載用カメラ、コンピュータ等の端末装置であったりしてもよい。
 [1.第1実施形態]
 [1.1 システム構成]
 第1実施形態について説明する。まず、図1は本実施形態におけるシステム全体を説明するための図である。図1のシステム1では、端末装置10が、ネットワークNWを介してサーバ20に接続可能に構成されている。
 端末装置10と、ネットワークNWは、無線通信で接続されている。例えば、IEEE802.11a/b/g/nといったWLANであったり、3GやLTEに代表される移動通信網であったりしてもよい。また、他の装置や、アクセスポイントといった接続装置に近距離無線通信で接続し、ネットワークNWに接続されることとしてもよい。また、有線のLANで接続されてもよいことは勿論である。
 サーバ20は、例えば画像の認識処理や、予測処理を実現することができる装置である。すなわち、本実施形態における画像認識処理は、端末装置10で行ってもよいし、サーバ20で行ってもよい。なお、端末装置10で処理が完結する場合は、サーバ20を必要としない。本実施形態では、説明の都合上、端末装置10で行うこととして説明するが、必要に応じた処理をサーバで行えばよいこととなる。
 詳細は後述するが、端末装置10には、背面や前面にカメラ(不図示)が設けられており、対象物Pを撮影することが可能となっている。すなわち、カメラで撮影された画像に、対象物Pが含まれていると、この対象物Pを認識(例えば、対象物Pの名称を認識)することができる。
 例えば、端末装置10の表示画面W10を示すと、表示画面W10には、対象物Pが領域R20に表示されており、この対象物Pの名称が領域R10に表示される。これにより、利用者は現在撮影されている対象物が何であるかを認識することが可能となる。
 なお、図1では、対象物Pの名称が表示されているが、必ずしもその必要は無い。例えば、単純に対象物の名称を認識することにより、音声で名称を利用者に伝えたり、画像にタグ付けができたり、表示されている対象物から検索処理を行ったりすることが可能である。
 また、認識という場合には、上述したように撮影された対象物を認識する場合と、予め対象物のパターンが決められており、撮影された対象物が当該パターンに該当するか否かといった認識をする場合がある。例えば、車載用カメラの場合において、自動車や、自転車、歩行者といったパターンに一致するか否かで、対象物を認識すると言ったことも含まれる。
 [1.2 機能構成]
 続いて、端末装置10の機能構成について図2を用いて説明する。図2に示すように、端末装置10は、制御部100と、画像入力部110と、予測処理部120と、処理変更判定部125と、通信部130と、記憶部140と、表示部150と、操作入力部160と、電話機能部170とを備えて構成されている。
 制御部100は、端末装置10の全体を制御するための機能部である。制御部100は、記憶部140に記憶されている各種プログラムを読み出して実行することにより各種機能を実現しており、例えばCPU(Central Process Unit)等により構成されている。
 画像入力部110は、画像を撮影し、撮影された画像から画像データとして端末装置10に入力するための機能部である。例えば、カメラ等により構成されており、撮像素子等によって画像を外部から入力し、入力された画像データは後述する予測処理部120に出力される。
 なお、画像入力部110は、カメラではなく、他の装置から入力された画像であってもよい。例えば、端末装置10と、カメラ装置とが接続され、カメラ装置において撮影された画像データを利用してもよい。
 予測処理部120は、入力された画像データに含まれている(写っている)対象物の名称や属性を予測するための機能部である。ここで、予測をする処理としては、最近はディープラーニング(ディープニューラルネットワーク)が高い精度を出しており、本実施形態でも一例として当該方法を利用する。このディープラーニングにおける処理について、図3を用いて簡単に説明する。
 まず、予測処理部120は、入力された画像データ(信号)を、複数の層と、各層に含まれるニューロンによって構成されるニューラルネットワークに入力する。各ニューロンは別の複数のニューロンから信号を受け取り、演算を施した信号を別の複数のニューロンへ出力する。ニューラルネットワークが多層構造の場合、信号が流れる順に、入力層、中間層(隠れ層)、出力層と呼ばれる。
 ニューラルネットワークの中間層が複数の層からなっているものはディープニューラルネットワークと呼ばれ、これを用いた機械学習の手法をディープラーニングと呼ぶ。なお、画像認識で高い精度を出しているのは、畳み込み演算を持つConvolutional Neural Network(畳み込みニューラルネットワーク)である。
 画像データはニューラルネットワークの各層のニューロンを各種演算(畳み込み演算、プーリング演算、正規化演算、行列演算等)をされ、形を変えながら流れ、出力層から複数の信号が出力される。
 ニューラルネットワークからの複数の出力値は、それぞれ、名称に紐づいていて、値が最も大きい出力値に紐づく名称を対象物の名称と予測する、というような処理を行う。または、直接名称に紐づかずに、複数の出力値を分類器に通して、分類器の出力から名称やタグを予測するということも行われる。
 ニューラルネットワークの各種演算に用いる係数であるパラメータは、事前にニューラルネットワークへ数多くの画像と、当該画像に写っている対象物が何かを示すラベルを入力し、出力値と正解値との誤差を、誤差逆伝播法(バックプロパゲーション)により、ニューラルネットワークを逆方向に伝搬し、各層のニューロンのパラメータを何度も更新することによって決まる。パラメータを更新し、決める工程を学習と呼ぶ。
 ここで、ニューラルネットワークの構造や、個々の演算については、書籍や論文で解説された公知技術であり、その何れかの技術を利用すれば良い。
 処理変更判定部125は、入力されている画像から、処理変更が必要か否かを判定するための機能部である。例えば、利用者がカメラで画像を撮影しているとき、カメラの向きを変えることによって撮影範囲を対象物から外し、再び対象物を写したとき、その動きをニューラルネットワークの出力値から判定し、処理変更が必要か否かの判定を行う。既存の処理の出力値を用いることで、大きなソフトウェアの変更を伴わずに判定を行うことが可能である。
 ここで、予測処理部120及び処理変更判定部125は、プログラムで提供されてもよいし、ハードウェアとして提供されてもよい。特に、畳み込みニューラルネットワークは、数多くの畳み込み演算や行列演算等を実行するため、GPU(Graphics Processing Unit)等のハードウェアがあると処理を高速化することができる。プログラムとして提供される場合には、予測処理プログラムと、処理変更判定プログラムが記憶部140に記憶されており、制御部100が読み出して実行することにより、同一の機能を実現する。
 また、予測処理部120及び処理変更判定部125の各処理は、サーバ20で実現されてもよい。この場合は、端末装置10から画像データをサーバ20に送信し、当該処理結果を受信すればよい。
 通信部130は、ネットワークNWに接続する機能を提供する機能部である。例えば、WLANに接続するための通信モジュールであったり、LTE通信網に接続するための通信モジュールであったりする。
 記憶部140は、端末装置10の動作に必要な各種プログラムや、各種データが記憶されている機能部である。記憶部140は、例えば、半導体メモリや、HDD(Hard Disk Drive)等により構成されている。
 表示部150は、各種情報や画像データを表示する為の機能部である。例えば、液晶ディスプレイ(LCD)や、有機ELパネルにより構成されている。なお、表示部150は、無線やHDMI等の有線により接続される外部の表示装置であってもよい。
 操作入力部160は、利用者が端末装置10に対して操作指示を入力するための機能部である。例えば、タッチパネルを利用したソフトウェアキーや、ハードウェアキーで構成されている。表示部150と一体に形成されていてもよい。
 電話機能部170は、端末装置10が電話として機能する場合に利用する機能部である。この電話機能部には、例えば、音声入出力部等が含まれている。なお、電話機能は従来からあるものであるため、説明を省略する。なお、一部のタブレット等の電話機能がない端末の場合は、電話機能部170をもたなくともよい。
 これらの機能構成は一例であり、必ずしも端末装置10が有していなくてもよい。例えば、操作入力部160を有していなくとも、例えば他の入出力装置(USBやBluetooth接続されたマウス等)によって実現されてもよい。また、画像入力部110も、例えばスマートウォッチに内蔵されたカメラからの画像が転送されたりしてもよい。
 [1.3 処理の流れ]
 続いて、本実施形態における処理の流れについて、図4のフローチャートを用いて説明する。まず、対象物が撮影され(ステップS102)、画像データが記憶部140に記憶される。この画像データは、記憶部140に、画像ファイルとして記憶されてもよいし、一時的に記憶されてもよい。
 続いて、画像データに基づいて、予測処理部120により対象物予測処理が実行される(ステップS104)。これにより、画像データに含まれている対象物の名称が予測される。
 続いて、変化が検出されたか否かを判定する(ステップS106)。ここで、本実施形態における変化を検出する動作について、図5及び図6を用いて説明する。まず、図5(a)に示すように、端末装置10は、対象物P2を撮影している。このとき、撮影範囲R100に対象物P2が含まれており、端末装置10の表示部にプレビュー表示可能な状態となっている。
 ここで、図5(b)に示すように、端末装置10のカメラの向きや、位置を変えることにより、対象物P2を一度撮影範囲R100から外す。そして、図5(c)に示すように、再度対象物P2が撮影範囲R100に含まれるように端末装置10を動かす。
 画像入力部110(カメラ)で写す対象が変わると、ニューラルネットワークへ入力される画像データが変わる。これにより、ニューラルネットワークから出力される値も変化することになる。
 例えば、図6は、対象物Aと、異なる対象物Bを写した場合の出力値を模式的に示した図である。対象物Aを写した場合は、n次元の出力値のうち、出力iが最も大きくなっているが、対象物Bを写した場合は、出力jが最も大きくなっている。このように、ニューラルネットワークの出力値を比較することにより、カメラで写した対象・範囲が変わり、変化があったことを検出することが可能となる。
 なお、これらの変化を検出するには、カメラの向きや位置を動かすだけでなく、対象物を動かして撮影範囲から外し再び撮影範囲に入れたり、対象物とカメラの間に物体を入れて遮断し、物体を外したりするといったことをしてもよい。
 ここで、対象物が決定(例えば、対象物の名称はこれで良いと利用者が決定処理を行う)されると、対象物が認識されたことになり、本処理を終了する(ステップS106;No→ステップS120;Yes)。対象物が決定されるまでは、例えば上述した処理が繰り返し実行される(ステップS106;No→ステップS120;No→ステップS102)。
 また、変化が検出された場合、つまり、カメラの撮影画像の変化を検知した場合には、予測処理変更判定処理が実行される(ステップS108)。ここで、本実施形態における予測処理変更判定処理としては、第1判定方法が用いられる。
 ここで、第1判定方法について説明する。第1判定方法は、ニューラルネットワークのn次元の出力値のうち、出力iの値が最も大きい状態から、閾値を通過して変化し、その後再び出力iの値が閾値を逆から通過して大きくなったとき、予測処理の変更が必要と判定する方法である。閾値は、例えば、各出力の値が、それぞれ紐づく名称の信頼度を表現するような出力とした場合、信頼度50%を閾値としたい場合は、最大値と最小値の中間値を閾値とすればよい。
 例えば、図7(a)の最も大きい出力iを見ると、現在は閾値Sを超えた状態となっている。ここで、異なる対象物を写した(図7(a)で写していた対象物を撮影対象から外した)のが図7(b)である。出力iは、閾値S以下に変化した。
 そして、再び対象物を写したのが図7(c)である。図7(b)から図7(c)に変化すると、出力iは、再び閾値Sを超えた状態となる。この場合、予測処理の変更が必要と判断することとなる。
 なお、閾値は下がる方向の閾値と、上がる方向の閾値が異なっていてもよい。下がりと上がりとで異なった閾値を用いることで、意図せずカメラが動いてしまった場合の誤判定を抑制することができる。また、閾値は絶対値でもよいし、各出力値の最大値や平均値等からの相対値であってもよい。
 続いて、予測処理変更判定処理において、予測処理の変更が必要無いと判定された場合には、ステップS102から繰り返し処理を実行する(ステップS110;No→ステップS102)。
 それに対して、予測処理の変更が必要だと判定された場合には、予測変更処理が実行される(ステップS110;Yes→ステップS112)。これにより、予測処理の方法が変更されることとなる。
 ここで、本実施形態における予測変更処理における変更方法としては、第1変更方法が用いられる。
 具体的には、ニューラルネットワークの各ニューロンのパラメータを変更する。パラメータとは、ニューラルネットワークの中で行われる各演算の係数である。パラメータはWeight(重み)や、Bias等とも呼ばれている。
 これらのパラメータは、事前に学習され獲得されるが、学習時に入力する画像の種類や数、順番及び学習時に指定する各種設定(パラメータの初期値、定数値、学習率、学習回数、Dropout率等)によって変化する。ここで、Dropoutとは、ニューロンの出力をある割合で無効化にする処理である。これを利用することにより、予測の汎化性能(未学習の画像等広く画像を見分ける能力)を向上させる効果がある。
 ここで、予測処理の方法が変更された場合には、変更されたことを表示したり、音やバイブといった、報知手段を用いて報知したりすることとしてもよい。
 以上の処理により、予測された対象物の名称が間違えている場合や、変更したい場合に、撮影時の自然な動きにより、また予測処理から出力される数値を用いることで、予測に関する処理の変更が必要か否か判定し、処理の変更を行うことが可能となる。
 利用者は、対象物の適切な名称を得ることによって、その名称を検索エンジンで検索したり、名称に関する詳細な情報を取得したりする際に、名称入力の省略が可能となる。
 例えば、最初に認識された対象物の名称が違う場合や異なる名称を得たい場合、一度対象物を撮影対象範囲から外し、再度撮影対象とする。このとき、対象物を予測する方法が変更されることで、異なる名称が表示されることになる。したがって、最初と異なる名称が表示されることで、適切な名称を得られる可能性がある。なお、他の方法として、予測処理には手を加えず、該当する名称を予測処理の結果から単純に除外する方法もある。この場合、通常、2番目の予測が繰り上がって最上位の予測となる。
 [2.第2実施形態]
 続いて、第2実施形態について説明する。第2実施形態は、第1実施形態で説明した第1判定方法の代わりに、第2判定方法を利用して判定を行う場合について説明する。
 第2判定方法は、n次元の出力値の順位をみて判定する。例えば、出力iの値が最も大きく1位の状態から、x位未満へ落ち、再びx位になったときに、予測処理の変更が必要と判断する。
 なお、当該順位の閾値は、下がる場合の順位の閾値と、上がる場合の順位の閾値とが異なってもよい。
 [3.第3実施形態]
 続いて、第3実施形態について説明する。第3実施形態は、第1実施形態で説明した第1判定方法の代わりに、第3判定方法を利用して判定を行う場合について説明する。
 n次元の出力値の全体の差を見て判断する。例えば、逐次、各出力値を記憶しておき(記憶した時間をt0とする)、その後のt1時間の各出力値とt0時間の各出力値の差(L1誤差、L2誤差、交差エントロピー誤差など)が閾値以上に変化し、その後のt2時間の各出力値とt0時間の各出力値の差が閾値未満になったときに、予測処理の変更が必要と判定する。差の一例として、L1誤差とは、異なる時間の各出力値について、同一位置にある出力値の差をとり、それらの絶対値の総和である。
 なお、差が大きくなる場合と、小さくなる場合の閾値が異なっていてもよい。
 [4.第4実施形態]
 続いて、第4実施形態について説明する。第4実施形態は、第1実施形態で説明した第1変更方法の代わりに、第2変更方法を利用して変更を行う場合について説明する。
 第2変更方法は、ニューラルネットワークのネットワーク(グラフ)を変更する。ネットワークの変更によって、パラメータも一緒に変更されることとなる。
 例えば、変更前のニューラルネットワークが、図8の構成をしていたときに、ネットワークの一部又は全部を変更する。ここで、図8において、「conv」は、畳み込み(Convolution)、「pool」はプーリング(Pooling)、「norm」は正規化(Normalization)、「fc」はフル結合(Full connection)を示している。
 変更方法は、畳み込み層の数を変更したり、新たな層を追加したり、ネットワークの途中の信号の次元を変更したり、多種多様な変更が考えられる。
 [5.第5実施形態]
 続いて、第5実施形態について説明する。第5実施形態は、第1実施形態で説明した第1変更方法の代わりに、第3変更方法を利用して変更を行う場合について説明する。
 第3変更方法は、ニューラルネットワークへ入る前の画像処理を変更する方法である。例えば、図9に示すように、ニューラルネットワークへ画像を入力する前に、物体認識画像処理部200を設ける。
 物体認識画像処理部200において、物体認識を行い、個々の認識された範囲をニューラルネットワークへ入力して予測を行う。このとき、物体認識のアルゴリズムやパラメータを変更する。
 物体認識のアルゴリズムとしては、Selective Search、Objectness等がある。物体認識のアルゴリズムやパラメータを変更することにより、ニューラルネットワークへ入力する範囲が変わるため、予測される名称に違いが生まれる。
 物体認識画像処理部200において、画像データ内の物体認識された領域が切り出され、それぞれ個別に予測処理が実行される(図10)。物体認識により、対象物の名称の予測精度が高まり、また、複数の対象物の名称を予測できるといった効果が得られる。
 また、物体認識とは別の画像処理として、ニューラルネットワークへ画像を入力する前に、画像データを拡大/縮小する処理を追加、変更したり、画像データのコントラストや明るさを変えたりといった、様々な変更が考えられる。
 [6.第6実施形態]
 続いて、第6実施形態について説明する。第6実施形態は、第1実施形態で説明した第1変更方法の代わりに、第4変更方法を利用して変更を行う場合について説明する。
 第4変更方法は、ニューラルネットワークの後の処理を変更する方法である。図11に示すようにニューラルネットワークの後に、分類処理部400(分類器)を設けることとする。
 これにより、ニューラルネットワークの出力値から予測する名称を決めず、出力値を分類処理部400にかけて、分類されたクラスに紐づく名称を予測とするといった処理が行われる。このとき、分類処理部400のアルゴリズムやパラメータを変更する。例えば、これらのアルゴリズムとしては、SVM(サポートベクターマシン)、ランダムフォレスト等がある。
 [7.第7実施形態]
 本実施形態では、過去に行われた予測処理変更の実績を記憶しておき、実績が高い予測処理へ変更する。
 例えば、過去に行われた予測処理について、予測処理変更判定処理にて変更が必要と判定された場合は、変更前の予測処理のスコアをマイナスし、画像認識が決定された場合は、そのときの予測処理のスコアをプラスしておく。このスコアを用い、予測処理の変更が必要な場合、スコアの高い予測処理へ優先的に変更する。
 これにより、成功実績の多い予測処理が選ばれるため、適正な対象物の名称を得るまでの時間を短縮することができる。
 [8.変形例]
 本発明は上述した各実施の形態に限定されるものではなく、種々の変更が可能である。すなわち、本発明の要旨を逸脱しない範囲内において適宜変更した技術的手段を組み合わせて得られる実施の形態についても本発明の技術的範囲に含まれる。
 また、各実施形態の判定方法、変更方法は組み合わせてもよいことは勿論である。例えば、第2判定方法と、第4変更方法とを組み合わせてもよいし、第3判定方法と、第2変更方法とを組み合わせてもよい。
 また、判定方法、変更方法を重畳的に適用してもよい。例えば、第1判定方法、第2判定方法との両方を用いてもよいし、全ての方法を一つの処理として適用してもよい。
 すなわち、判定方法、変更方法は、実施形態に関わらず整合性がとれる範囲で自由に組み合わせて実施可能である。
1 システム
10 端末装置
 100 制御部
 110 画像入力部
 120 予測処理部
 125 処理変更判定部
 130 通信部
 140 記憶部
 150 表示部
 160 操作入力部
 170 電話機能部
20 サーバ
 
 

Claims (5)

  1.  入力された画像から、予測処理に基づいて対象物を認識する対象物認識手段を備えた画像認識装置において、
     入力された画像から動きが検知された場合には、前記予測処理の変更が必要か否かを判定する予測処理変更判定手段と、
     前記予測処理の変更が必要と判定された場合には、前記予測処理と異なる予測処理に変更をする予測処理変更手段と、
     を備えることを特徴とする画像認識装置。
  2.  前記予測処理変更判定手段は、前記対象物が前記画像に含まれているか否かで動きを検知することを特徴とする請求項1に記載の画像認識装置。
  3.  前記予測処理変更判定手段は、
     前記画像をニューラルネットワークに入力して、当該ニューラルネットワークの出力値の変化に基づいて、動きを検知することを特徴とする請求項1又は2に記載の画像認識装置。
  4.  前記予測処理変更手段は、前記ニューラルネットワークを変更することを特徴とする請求項3に記載の画像認識装置。
  5.  入力された画像から、予測処理に基づいて対象物を認識する対象物認識機能を実行可能なコンピュータに、
     入力された画像から動きが検知された場合には、前記予測処理の変更が必要か否かを判定する予測処理変更判定機能と、
     前記予測処理の変更が必要と判定された場合には、前記予測処理と異なる予測処理に変更をする予測処理変更機能と、
     を実現させるためのプログラム。
PCT/JP2017/006415 2016-04-21 2017-02-21 画像認識装置及びプログラム WO2017183280A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016084939 2016-04-21
JP2016-084939 2016-04-21

Publications (1)

Publication Number Publication Date
WO2017183280A1 true WO2017183280A1 (ja) 2017-10-26

Family

ID=60115968

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/006415 WO2017183280A1 (ja) 2016-04-21 2017-02-21 画像認識装置及びプログラム

Country Status (1)

Country Link
WO (1) WO2017183280A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02173877A (ja) * 1988-12-27 1990-07-05 Seiko Epson Corp 画像パターン変化検出装置
JP2008015860A (ja) * 2006-07-07 2008-01-24 Matsushita Electric Ind Co Ltd 画像認識カメラ
JP2015022624A (ja) * 2013-07-22 2015-02-02 キヤノン株式会社 情報処理装置およびその制御方法、コンピュータプログラム、記憶媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02173877A (ja) * 1988-12-27 1990-07-05 Seiko Epson Corp 画像パターン変化検出装置
JP2008015860A (ja) * 2006-07-07 2008-01-24 Matsushita Electric Ind Co Ltd 画像認識カメラ
JP2015022624A (ja) * 2013-07-22 2015-02-02 キヤノン株式会社 情報処理装置およびその制御方法、コンピュータプログラム、記憶媒体

Similar Documents

Publication Publication Date Title
KR102585877B1 (ko) 디바이스가 이미지를 보정하는 방법 및 그 디바이스
US11470385B2 (en) Method and apparatus for filtering video
US11222413B2 (en) Method for correcting image by device and device therefor
TW202030637A (zh) 人臉圖像識別方法、裝置、電子設備及儲存介質
CN106777007A (zh) 相册分类优化方法、装置及移动终端
US20210224592A1 (en) Method and device for training image recognition model, and storage medium
US11457273B2 (en) Video playback device and control method thereof
US11593635B2 (en) Information processing device, method of processing information, and method of providing information
US11494045B2 (en) Electronic apparatus and object information recognition method by using touch data thereof
US10803058B2 (en) Information processing device, method of processing information, and method of providing information
US11210525B2 (en) Method and terminal for providing content
US11188359B2 (en) Electronic device and screen capturing method thereof
WO2020232976A1 (zh) 信息处理方法及装置、电子设备和存储介质
CN110291794B (zh) 用于对视频进行过滤的方法和设备
CN110674932A (zh) 一种二阶段卷积神经网络目标检测网络训练方法及装置
US20150309583A1 (en) Motion recognizing method through motion prediction
CN117413296A (zh) 用于密集估计的具有相关表征的体积采样
WO2017183280A1 (ja) 画像認識装置及びプログラム
US20220343156A1 (en) Server for refining model in terminal and operation method thereof
JP7424374B2 (ja) 物体検出装置、物体検出システム、物体検出方法、プログラムおよび記録媒体
US20200327451A1 (en) Electronic apparatus and server for refining artificial intelligence model, and method of refining artificial intelligence model
CN116997938A (zh) 用于整体视频理解的视频模型的自适应使用
JP6419560B2 (ja) 検索装置、方法及びプログラム
KR20220026426A (ko) 비디오 품질 향상 방법 및 장치
CN112764565B (zh) 电子装置及其利用触控数据的物件信息识别方法

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17785625

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17785625

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP