JP2019091993A - 撮像装置及びプログラム - Google Patents
撮像装置及びプログラム Download PDFInfo
- Publication number
- JP2019091993A JP2019091993A JP2017218275A JP2017218275A JP2019091993A JP 2019091993 A JP2019091993 A JP 2019091993A JP 2017218275 A JP2017218275 A JP 2017218275A JP 2017218275 A JP2017218275 A JP 2017218275A JP 2019091993 A JP2019091993 A JP 2019091993A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- service
- setting
- module
- unit
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
- Studio Devices (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】応答速度が低下するのを防ぎつつ、ファームウェアの部分的なアップデートを可能とすることを目的とする。【解決手段】ユーザインターフェイス提供モジュールと、画像に対して処理を行う複数の処理モジュールとを有し、ユーザインターフェイス提供モジュールは、各処理モジュールに対し、処理内容を示す処理情報を設定し、複数の処理モジュールそれぞれは、ユーザインターフェイス提供モジュールにより設定された処理情報に従い、入力された画像に対して処理を行う。【選択図】図3
Description
本発明は、撮像装置及びプログラムに関する。
従来、カメラなどの撮像装置においては応答性を確保するためにリアルタイムOSが採用されており、このためにファームウェアのアップデートはファームウェア全体でしか行うことができなかった。他方でAndroid(登録商標)などにおいては、ソフトウェアモジュールが複数に分かれており、個々のアップデートが可能である。ただし、ミドルウェア層とアプリケーション層との間で処理の主体が移動し、その間でデータがコピーされるため、高速の応答を確保することが困難であった。応答性を確保するためには、ミドルウェア層でユーザの介入なしに複数のモジュールが起動・処理されることが期待される。これに対し、特許文献1には、画像のキューレーションを行うための基準を生成する方法として、ユーザの介入なしに自動的に1つ又は複数のモジュールが起動される構成が開示されている。
しかしながら、従来技術においては、高速の応答性とファームウェアの部分的なアップデートを可能とすることの両立が困難であるという問題があった。
本発明はこのような問題点に鑑みなされたもので、応答速度が低下するのを防ぎつつ、ファームウェアの部分的なアップデートを可能とすることを目的とする。
そこで、本発明は、撮像装置であって、ユーザインターフェイス提供モジュールと、画像に対して処理を行う複数の処理モジュールとを有し、前記ユーザインターフェイス提供モジュールは、各処理モジュールに対し、処理内容を示す処理情報を設定し、前記複数の処理モジュールそれぞれは、前記ユーザインターフェイス提供モジュールにより設定された前記処理情報に従い、入力された画像に対して処理を行うことを特徴とする。
本発明によれば、応答速度が低下するのを防ぎつつ、ファームウェアの部分的なアップデートを可能とすることができる。
以下、本発明の実施形態について図面に基づいて説明する。
<構成>
図1は、本件実施形態に係る撮像装置100のハードウェアの構成図である。レンズユニット101は、集光のための固定レンズ群、変倍レンズ群、絞り、変倍レンズ群の動きで移動した結像位置を補正する機能と焦点調節を行う機能とを兼ね備えた補正レンズ群により構成される。イメージセンサー102は、撮像素子であり、レンズユニット101によって集光された光から作られた光学像を、電気信号に変換する。信号処理回路103は、撮像素子で生成される電気信号に対して画像処理を行い、画像データを出力する。
<構成>
図1は、本件実施形態に係る撮像装置100のハードウェアの構成図である。レンズユニット101は、集光のための固定レンズ群、変倍レンズ群、絞り、変倍レンズ群の動きで移動した結像位置を補正する機能と焦点調節を行う機能とを兼ね備えた補正レンズ群により構成される。イメージセンサー102は、撮像素子であり、レンズユニット101によって集光された光から作られた光学像を、電気信号に変換する。信号処理回路103は、撮像素子で生成される電気信号に対して画像処理を行い、画像データを出力する。
CPU104は、演算装置であって、装置全体の制御を司る。ROM109は、不揮発性のメモリであって、CPU104が実行するプログラムと、これが使用するパラメータ等を記憶している。RAM110は、揮発性のメモリであって、プログラムをCPU104が実行する時のワークエリア等として用いられる。eMMC111は、不揮発性のメモリであって、プログラムと、プログラムが使用するパラメータや、画像ファイルなどのユーザデータを記憶している。eMMC111は、ハードディスクやSDカードなど書き換えが可能な、不揮発性の他の記憶手段によっても代替し得る。
LCD106は、液晶ディスプレーパネルであり、コントローラ105は、LCD106のコントロールを行う。LCD106とコントローラ105は、プログラムやシステムによって処理中の情報、各種メッセージ、メニューなどの表示を行う。LCD106とコントローラ105は、有機ELディスプレーなど他のディスプレーとそのコントローラによっても代替し得る。タッチパネル108は、タッチパネルであり、コントローラ107は、タッチパネル108のコントロールを行う。タッチパネル108とコントローラ107は、ユーザからの入力を受け付け、ユーザがオペレーションを行うために用いられる。タッチパネル108とコントローラ107は、物理ボタンなど他の入力手段によっても代替し得る。バス120は、上述した各部を接続し、通信を可能とする。また上記説明したほかに外部接続用にインターフェイスを備えてもよい。
<ソフトウェアモジュール構成>
図2は、撮像装置100のソフトウェアの構成図である。図2において、ユーザインターフェイス(UI)部201は、ユーザとのインタラクションをLCD106やタッチパネル108を通じて行うソフトウェアモジュールであって、eMMC111のプログラムの一部として存在する。UI部201は、ユーザインターフェイス提供モジュールの一例である。
図2は、撮像装置100のソフトウェアの構成図である。図2において、ユーザインターフェイス(UI)部201は、ユーザとのインタラクションをLCD106やタッチパネル108を通じて行うソフトウェアモジュールであって、eMMC111のプログラムの一部として存在する。UI部201は、ユーザインターフェイス提供モジュールの一例である。
サービスA202は、カメラ信号処理回路によって出力された画像データ、または、サービスA202、サービスB203もしくはサービスC204から出力された画像データを入力として、画像データを処理対象として処理を行う。サービスAはさらに、処理後の画像データを、サービスA202、サービスB203、サービスC204またはUI部201へ出力する。なお、サービスA202は、サービスA202、サービスB203、サービスC204またはUI部201のうち少なくとも1つへ出力すればよい。他の例としては、サービスA202は、サービスA202とUI部201というように2以上の出力先へ出力してもよい。また、他の例としては、サービスA202は、出力を行わなくともよい。サービスA202は、eMMC111のプログラムの一部として存在する。サービスB203及びサービスC204も、サービスA202と同様に動作する。このように、処理モジュールは、処理モジュールと異なる他の処理モジュールだけでなく、処理モジュール自身を出力データの出力先とすることができる。
さらに、撮像装置100は、サービスA202、サービスB203及びサービスC204同様の機能を有するソフトウェアモジュールを、追加、削除することができる。以下では、サービスA202と同様に動作する一連のソフトウェアモジュールをサービス群といい、サービス群を構成する個々のソフトウェアモジュールを構成サービスと呼ぶ。図2の例では、サービス群は、サービスA202、サービスB203及びサービスC204で構成され、このサービス群を構成する構成サービスは、サービスA202、サービスB203またはサービスC204である。サービス群は、1つ以上の構成サービスにより構成される。図2の例では、サービス群を構成する構成サービスは3つであるが、構成サービスの数は限定されるものではなく、1つ以上あればよい。なお、撮像装置100は、さらに、オペレーションシステム等、汎用的機能を有するソフトウェアモジュール群も有しているものとする。ここで、各構成サービスは、画像に対して処理を行う処理モジュールの一例である。
UI部201は、サービス群を管理する機構を有する。UI部201は、サービス群を構成する構成サービス毎に、eMMC111上の位置を表すファイルパス、プロセス間通信において識別するための識別子、構成サービスの情報を保持している。ここで、構成サービスの情報は、構成サービス毎に付されたIDであるサービスIDや、後述する処理設定を作る上で必要な情報等を含むものとする。構成サービスが追加されるときには、撮像装置100は、UI部201が保持する構成サービスの情報に、追加する構成サービスに関する情報を追加する。撮像装置100はまた、構成サービスを削除する時には、UI部201が保持する構成サービスの情報から、削除する構成サービスに関する情報を削除する。
UI部201が保持する構成サービスの情報について、UI部201自体が保持せず、構成サービス以外のソフトウェアモジュールを別に設け、このソフトウェアモジュールが保持することとしてもよい。この場合には、UI部201は、このソフトウェアモジュールの保持する構成サービスの情報を利用すればよい。またUI部201は、構成サービスが入力に対してどのような処理をすべきかについて、設定を行うことができる。以下では、設定内容を処理設定と称する。処理設定は、入力データに対して行われる処理の指定、出力先の指定、出力される構成サービスにおける処理に使用される処理設定を識別する設定IDの指定を含む。ここで、処理設定は、構成サービスにおける処理内容を示す処理情報の一例である。ここで、設定IDは、処理設定の識別情報の一例である。また、出力先の指定は、出力先情報の一例である。
<構成サービスでの処理>
図3は、構成サービスが、他の構成サービスの出力を入力とする場合の処理の説明図である。なお、構成サービスが、信号処理回路103によって出力された画像データを入力とする場合については後述する。図3に示すUI部301は、図2のUI部201に対応する。また構成サービス302は、図2のサービスA202、サービスB203またはサービスC204に対応する。構成サービス302は、UI部301から設定された処理設定を保存するための領域303を有している。領域303は、複数設けられていてもよい。UI部301が構成サービス302に対して、処理設定304を設定する。そして、構成サービス302は、処理設定304を指定された入力に対して、処理設定304で指定された処理を行い、処理設定304で指定された構成サービスまたはUI部301に対し出力する。
図3は、構成サービスが、他の構成サービスの出力を入力とする場合の処理の説明図である。なお、構成サービスが、信号処理回路103によって出力された画像データを入力とする場合については後述する。図3に示すUI部301は、図2のUI部201に対応する。また構成サービス302は、図2のサービスA202、サービスB203またはサービスC204に対応する。構成サービス302は、UI部301から設定された処理設定を保存するための領域303を有している。領域303は、複数設けられていてもよい。UI部301が構成サービス302に対して、処理設定304を設定する。そして、構成サービス302は、処理設定304を指定された入力に対して、処理設定304で指定された処理を行い、処理設定304で指定された構成サービスまたはUI部301に対し出力する。
なお、処理設定304は、以下、(a)〜(c)の3つの情報を含む。
(a)入力データに対して行われる処理の指定
(b)出力先の指定
(c)出力先の構成サービスにおける処理に使用される処理設定の設定IDの指定
(a)入力データに対して行われる処理の指定
(b)出力先の指定
(c)出力先の構成サービスにおける処理に使用される処理設定の設定IDの指定
図4は、UI部301から構成サービス302に対して処理設定304が設定された場合の、構成サービス302による設定処理を示すフローチャートである。S401において、構成サービス302は、UI部301から処理設定を取得する。次に、S402において、構成サービス302は、取得した処理設定に対し、ユニークな設定IDを付与する。さらに、構成サービス302は、UI部301に対し、設定IDを通知する。次に、S403において、構成サービス302は、処理設定を設定IDに紐付けて領域303に保存する。以上で処理が終了する。なお、構成サービス302は、処理設定そのものを保存するのに替えて、処理設定を、後の工程で使いやすい形に変換した上で、設定IDに紐付けて保存してもよい。
図5は、構成サービス302への入力が他の構成サービスからの出力である場合の、構成サービス302による、入力された画像データに対する処理を示すフローチャートである。S501において、構成サービス302は、他の構成サービスから処理対象となる画像データを取得する。また、構成サービス302は、他の構成サービスより、入力の処理をどのように行うかの指定のために、処理設定を指定する情報として、設定IDを取得する。次に、S502において、構成サービス302は、領域303より、設定IDに紐付けられた処理設定を取り出す。以下、取り出された処理設定を、対象処理設定と称する。
次に、S503において、構成サービス302は、対象処理設定に含まれる「(a)入力データに対して行われる処理の指定」に基づいて、画像データに対する処理を行う。次に、S504において、構成サービス302は、対象処理設定に含まれる「(b)出力先の指定」に基づいて、出力先を特定し、処理後の画像データを出力する処理を行う。構成サービス302は、出力先が構成サービスである場合、さらに処理設定に含まれる「(c)出力される構成サービスにおける処理に使用される処理設定の設定IDの指定」に基づき、出力先で実行される処理設定の設定IDを特定する。そして、構成サービス302は、特定した設定IDを出力対象の処理後の画像データと共に出力先に出力する。なお、出力先の構成サービスは、S504において出力された設定IDと、画像データとを、S501の処理において取得する。なお、処理設定が、「(b)出力先の指定の指定」を含まない場合、出力処理は不要である。
このようにサービス群を構成する各構成サービスは、連携して処理を連続的に行うことが可能となり、各構成サービスでの処理が完了する度に、UI部301に処理を戻す必要がない。また、入出力のためのデータのやり取りも減るので、高い応答性を実現できる。またUI部301や各構成サービスは、それぞれ独立したソフトウェアモジュールであるから、それぞれ単独でのアップデートが可能であり、システムのアップデート時に一体となったアップデートが不要となる。
<信号処理回路103によって出力された画像データを入力とする場合>
図6は、信号処理回路103によって出力された画像データを入力とする場合の構成サービスの処理の説明図である。構成サービスの入力としては、他の構成サービスの出力も信号処理回路103によって出力された画像データも両方あり得るのであり、これら入力それぞれに対して別々の構成サービスが必要とされるわけでない。すなわち、図6に示すUI部601、構成サービス602、領域603、処理設定604は、それぞれ図3に示すUI部301、構成サービス302、領域303、処理設定304に対応する。また、図6に示す構成サービス602は、構成サービス302と同様に、図4に示す処理を行う。
図6は、信号処理回路103によって出力された画像データを入力とする場合の構成サービスの処理の説明図である。構成サービスの入力としては、他の構成サービスの出力も信号処理回路103によって出力された画像データも両方あり得るのであり、これら入力それぞれに対して別々の構成サービスが必要とされるわけでない。すなわち、図6に示すUI部601、構成サービス602、領域603、処理設定604は、それぞれ図3に示すUI部301、構成サービス302、領域303、処理設定304に対応する。また、図6に示す構成サービス602は、構成サービス302と同様に、図4に示す処理を行う。
しかしながら、信号処理回路103によって出力された画像データを入力とする場合において、この画像データに対する処理について、信号処理回路103など、UI部601以外で設定IDを指定することができない。そこで、信号処理回路103によって出力された画像データが入力である場合には、UI部601が設定IDを指定する必要がある。
開始指示605は、この指定を行うための、構成サービス602のインターフェイスであって、信号処理回路103によって出力された画像データが入力としてあった場合に使用される処理設定の設定IDを引数として、呼び出される。構成サービス602は、開始指示605が呼び出されたときには、信号処理回路103によって出力された画像データを入力とした処理が開始されたことを示すフラグにTRUEを設定する。構成サービス602はさらに、信号処理回路103によって出力された画像データが入力されたときに使用される処理設定の設定IDを保存する。以下ではこのフラグを画像データ入力フラグといい、この保存された設定IDを画像データ入力用設定IDと称する。
また終了指示606は、開始指示605での設定を無効化するために使用される構成サービス602のインターフェイスである。構成サービス602は、終了指示606が呼び出されたときには、画像データ入力フラグにFALSEを設定する。構成サービス602は、さらに、保存された画像データ入力用設定IDを破棄する。
なお、構成サービスが、信号処理回路103によって出力された画像データを入力とする場合に常に同じ処理を行う場合もある。この場合には、構成サービスは、構成サービスの起動時から、構成サービスが実行する処理設定の設定IDを画像データ入力用設定IDとして指定しておき、画像データ入力フラグもTRUEに指定しておけばよい。さらに、この場合には、開始指示605や終了指示606を設ける必要はない。
図7は、信号処理回路103によって出力された画像データを入力とする場合の構成サービスの処理を示すフローチャートである。S701において、構成サービス602は、入力として、信号処理回路103によって出力された画像データを取得する。次に、S702において、構成サービス602は、画像データ入力フラグを確認する。構成サービス602は、画像入力フラグがTRUEの場合には(S702でYES)、処理をS703へ進める。構成サービス602は、画像入力フラグがFALSEの場合には(S702でNO)、処理を終了する。この場合には、入力された画像データは処理が施されることなく破棄される。
S703において、構成サービス602は、領域603より、画像データ入力用設定IDに紐付けられた処理設定を取り出し、その後処理をS704へ進める。S704及びS705の処理は、それぞれ図5を参照しつつ説明したS503及びS504の処理と同様である。
<第1のアプリケーション>
次に、撮像装置100の構成を用いたアプリケーション例について説明する。図8は、第1のアプリケーションを示す図である。第1のアプリケーションは、信号処理回路103によって出力された画像データに対し、画像処理1、画像処理2という2つの画像処理をかけ、Jpegに変換して、これをユーザに表示する。図8において、実線はソフトウェアモジュール間の通信を、破線はデータの受け渡しを示している。UI部801は、図2のUI部201に対応する。また画像処理1サービス802は、画像処理1を行う機能を有する構成サービスである。画像処理2サービス803は、画像処理2を行う機能を有する構成サービスである。Jpegへの変換サービス804は、Jpegへの変換を行う機能を有する構成サービスである。なお、画像処理1及び画像処理2は、色の変換等画像データを用いた処理であればよく、特に限定されるものではない。
次に、撮像装置100の構成を用いたアプリケーション例について説明する。図8は、第1のアプリケーションを示す図である。第1のアプリケーションは、信号処理回路103によって出力された画像データに対し、画像処理1、画像処理2という2つの画像処理をかけ、Jpegに変換して、これをユーザに表示する。図8において、実線はソフトウェアモジュール間の通信を、破線はデータの受け渡しを示している。UI部801は、図2のUI部201に対応する。また画像処理1サービス802は、画像処理1を行う機能を有する構成サービスである。画像処理2サービス803は、画像処理2を行う機能を有する構成サービスである。Jpegへの変換サービス804は、Jpegへの変換を行う機能を有する構成サービスである。なお、画像処理1及び画像処理2は、色の変換等画像データを用いた処理であればよく、特に限定されるものではない。
UI部801は、ユーザがこの処理(第1のアプリケーション)を選んだ場合には、Jpegへの変換サービス804、画像処理2サービス803、画像処理1サービス802それぞれに対して、処理設定の設定を行う((1)〜(3))。(1)において、Jpegへの変換サービス804は、UI部801から処理設定を取得する。処理設定には、Jpegへの変換に必要なパラメータ、出力先をUI部801とすること等が含まれている。Jpegへの変換サービス804は、UI部801から取得した処理設定に対し、設定ID「1」を付与し、設定ID「1」をUI部801へ通知する。続いて、Jpegへの変換サービス804は、処理設定と設定ID「1」とを紐付けて保存する。
(2)において、画像処理2サービス803は、UI部801から処理設定を取得する。なお、UI部801は、(1)の処理においてJpegへの変換サービス804から取得した設定ID「1」を画像処理2サービス803に処理設定として通知するものとする。すなわち、画像処理2サービス803が取得する処理設定には、画像処理2を行うために必要なパラメータ、出力先をJpegへの変換サービス804とすること、出力先で利用される処理設定の設定IDが「1」であること等の情報が含まれる。続いて、画像処理2サービス803は、UI部801から取得した処理設定に対し、設定ID「2」を付与し、設定ID「2」をUI部801へ通知する。続いて、Jpegへの変換サービス804は、UI部801から取得した処理設定と、設定ID「2」とを紐付けて保存する。
(3)において、画像処理1サービス802は、UI部801から処理設定を取得する。なお、UI部801は、(2)の処理において画像処理2サービス803から取得した設定ID「2」を画像処理1サービス802に処理設定として通知するものとする。すなわち、画像処理1サービス802が取得する処理設定には、画像処理1を行うために必要なパラメータ、出力先を画像処理2サービス803とすること、出力先で利用される処理設定の設定IDが「2」であること等の情報が含まれる。続いて、画像処理1サービス802は、UI部801から取得した処理設定に対し、設定ID「3」を付与し、設定ID「3」をUI部801へ通知する。なお、図8では説明の便宜上、設定IDを「1」、「2」、「3」としたが、設定IDは、各処理設定を識別可能な識別情報であればよく、実施形態に限定されるものではない。このように、構成サービスに処理設定を設定する際には、下流の構成サービスから順に処理設定を行うものとする。
そして、UI部801が、画像処理1サービス802に対し、設定ID「3」の引数を伴う開始指示を行う(4)。その後、画像処理1サービス802は、設定ID「3」に対応した処理設定に従い、画像処理1を行う。そして、画像処理1サービス802は、処理後の画像データと、出力先の画像処理2サービス803において参照される処理設定に対応した設定ID「2」と、を画像処理2サービス803へ出力する。
画像処理2サービス803も、設定ID「2」の処理設定に従い、画像処理2を行う。そして、画像処理2サービス803は、処理後の画像データと、設定ID「1」と、をJpegへの変換サービス804へ出力する。Jpegへの変換サービス804も、設定ID「1」の処理設定に従い、Jpegへの変換の処理を行う。そして、Jpegへの変換サービス804は、処理後の画像データをUI部801へ出力する。
このように、画像処理1サービス802及び画像処理2サービス803それぞれの処理の後、UI部801に処理を戻す必要がなく、またUI部801へデータを渡す必要もない。従って、撮像装置100においては、高い応答性が実現できる。またUI部801、画像処理1サービス802、画像処理2サービス803、Jpegへの変換サービス804は、それぞれ独立したソフトウェアモジュールである。このため、それぞれ単独でのアップデートが可能であり、システムのアップデート時に一体となったアップデートは必要ではない。例えば、画像処理1、画像処理2に加えて、画像処理3を行うための画像処理3サービスを追加するとする。この場合には、画像処理3サービスの追加と、UI部801の保持する構成サービスの情報の更新を要する。しかしながら、UI部801そのものや、画像処理1サービス802、画像処理2サービス803、Jpegへの変換サービス804の更新は要しない。
<第2のアプリケーション>
図9は、第2のアプリケーションを示す図である。第2のアプリケーションは、信号処理回路103によって出力された画像データに対し、被写体を判定する。そして、被写体が人であれば顔認証を行い、被写体となった人の氏名を表示し、被写体が犬であれば、被写体となった犬の犬種を表示する。図8と同様、図9において、実線はソフトウェアモジュール間の通信を、破線はデータの受け渡しを意味する。UI部901は、図2のUI部201に対応する。被写体判定サービス902は、被写体の種別の判定を行う機能を有する構成サービスである。顔認証サービス903は、画像の被写体の人の顔から被写体の氏名を判断する機能を有する構成サービスである。犬種判定サービス904は、犬の画像中から犬種を判定する構成サービスである。
図9は、第2のアプリケーションを示す図である。第2のアプリケーションは、信号処理回路103によって出力された画像データに対し、被写体を判定する。そして、被写体が人であれば顔認証を行い、被写体となった人の氏名を表示し、被写体が犬であれば、被写体となった犬の犬種を表示する。図8と同様、図9において、実線はソフトウェアモジュール間の通信を、破線はデータの受け渡しを意味する。UI部901は、図2のUI部201に対応する。被写体判定サービス902は、被写体の種別の判定を行う機能を有する構成サービスである。顔認証サービス903は、画像の被写体の人の顔から被写体の氏名を判断する機能を有する構成サービスである。犬種判定サービス904は、犬の画像中から犬種を判定する構成サービスである。
UI部901は、ユーザがこの処理(第2のアプリケーション)を選んだ場合には、被写体判定サービス902、顔認証サービス903、犬種判定サービス904それぞれに対して、処理設定の設定を行う((1)〜(3))。(1)において、犬種判定サービス904は、UI部901から処理設定を取得する。処理設定には、判定の精度など犬種判定に必要なパラメータ、出力先をUI部901とすること等が含まれている。犬種判定サービス904は、処理設定に対し、設定ID「1」を付与し、設定ID「1」をUI部901へ通知する。犬種判定サービス904は、さらにUI部901から取得した処理設定と設定ID「1」とを紐付けて保存する。
(2)において、顔認証サービス903は、UI部901から処理設定を取得する。処理設定には、顔認証に必要なパラメータ、出力先をUI部901とすること等が含まれている。顔認証サービス903は、UI部901から取得した処理設定に対し、設定ID「2」を付与し、設定ID「2」をUI部901へ通知する。顔認証サービス903は、さらにUI部901から取得した処理設定と設定ID「2」とを紐付けて保存する。
(3)において、被写体判定サービス902は、UI部901から処理設定を取得する。なお、UI部901は、(1)の処理において犬種判定サービス904から取得した設定ID「1」と、(2)の処理において顔認証サービス903から取得した設定ID「2」と、を被写体判定サービス902へ処理設定として通知するものとする。すなわち、被写体判定サービス902が取得する処理設定には、被写体判定に必要なパラメータ、被写体が人と認識された場合には出力先を顔認証サービス903とすること、出力先で利用される処理設定が設定ID「2」であること等の情報が含まれる。被写体判定サービス902が取得する処理設定にはさらに、被写体が犬と認識された場合には出力先を犬種判定サービス904とすること、出力先で利用される処理設定が設定ID「1」であること等の情報が含まれる。そして、被写体判定サービス902は、UI部901から取得した処理設定に対し、設定ID「3」を付与し、設定ID「3」をUI部901へ通知する。被写体判定サービス902は、さらにUI部901から取得した処理設定と設定ID「3」とを紐付けて保存する。
そして、UI部901が、被写体判定サービス902に対し、設定ID「3」の引数を伴う開始指示を行う(4)。その後、被写体判定サービス902は、信号処理回路103から出力された画像データに対して、設定ID「3」の処理設定に従い、被写体判定を行う。被写体判定サービス902は、被写体が人と認識された場合には、画像データと、設定ID「2」と、を顔認証サービス903へ出力する。被写体判定サービス902は、被写体が犬と認識された場合には、画像データと、設定ID「1」と、を犬種判定サービス904へ出力する。顔認証サービス903は、設定ID「2」の処理設定に従い、顔認証を行い、被写体の氏名を判断し、その結果をUI部901へ出力する。犬種判定サービス904は、設定ID「1」の処理設定に従い、犬種の判定を行い、判定結果をUI部901へ出力する。
このように、被写体判定サービス902での処理の後、UI部901に処理を戻す必要がなく、またUI部901へデータを渡す必要もない。従って、撮像装置100においては、高い応答性が実現できる。またUI部901、被写体判定サービス902、顔認証サービス903、犬種判定サービス904は、それぞれ独立したソフトウェアモジュールであるから、それぞれ単独でのアップデートが可能である。したがって、一部のソフトウェアモジュールをアップデートしたり、ソフトウェアモジュールを追加したりするような場合において、システム全体のアップデートを行わなくてよい。
例えば、顔認証サービス903、犬種判定サービス904に加えて、描種判定を行うための描種判定サービスを追加する場合には、描種判定サービスの追加と、UI部901の保持する構成サービスの情報の更新を要する。しかしながら、UI部901そのものや、被写体判定サービス902、顔認証サービス903、犬種判定サービス904の更新は要しない。描種判定サービスを追加した場合には、UI部901の更新がなくとも、被写体が猫の場合には、描種が表示されることとなる。またこれは猫種の表示機能をもったユーザインターフェイス部をユーザが明示的に起動することなく、猫種の表示を可能とすることも意味する。
以上のように、実施形態に係る撮像装置100においては、入力データに対する処理を行うソフトウェアモジュール(構成サービス)は、UI部901との間でデータの受け渡しを行うことなく、処理を行うことができる。このため、処理に係る応答速度の低下を防ぐことができる。さらに、ソフトウェアモジュール単位での、ファームウェアの部分的なアップデートを可能とすることができる。このように、撮像装置100は、応答速度が低下するのを防ぎつつ、ファームウェアの部分的なアップデートを可能とすることができる。
<他の実施形態>
実施形態の変形例としては、撮像装置100に替えて、レンズユニットやイメージセンサーを備える汎用デバイスにおけるソフトウェアの一部が、図2のソフトウェアの構成を有してもよい。
実施形態の変形例としては、撮像装置100に替えて、レンズユニットやイメージセンサーを備える汎用デバイスにおけるソフトウェアの一部が、図2のソフトウェアの構成を有してもよい。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100 撮像装置
201 ユーザインターフェイス部
202 サービスA
203 サービスB
204 サービスC
201 ユーザインターフェイス部
202 サービスA
203 サービスB
204 サービスC
Claims (8)
- ユーザインターフェイス提供モジュールと、
画像に対して処理を行う複数の処理モジュールと
を有し、
前記ユーザインターフェイス提供モジュールは、各処理モジュールに対し、処理内容を示す処理情報を設定し、
前記複数の処理モジュールそれぞれは、前記ユーザインターフェイス提供モジュールにより設定された前記処理情報に従い、入力された画像に対して処理を行うことを特徴とする撮像装置。 - 前記ユーザインターフェイス提供モジュールは、前記処理モジュールに設定する処理内容に情報の出力が含まれる場合に、前記処理情報と共に、出力先を示す出力先情報を前記処理モジュールに設定することを特徴とする請求項1に記載の撮像装置。
- 前記ユーザインターフェイス提供モジュールは、前記複数の処理モジュールのうち第1の処理モジュールに対し、前記第1の処理モジュールの処理内容を示す第1の処理情報と、前記第1の処理モジュールから出力される前記情報に対して、前記第1の処理モジュールと異なる第2の処理モジュールにおいて施される処理内容を示す第2の処理情報と、を前記第1の処理モジュールに設定することを特徴とする請求項1又は2に記載の撮像装置。
- 前記ユーザインターフェイス提供モジュールは、前記第1の処理モジュールに対し、前記出力データに対して施される処理内容を示す前記第2の処理情報として、前記第2の処理情報を識別する識別情報を設定することを特徴とする請求項3に記載の撮像装置。
- 前記ユーザインターフェイス提供モジュールは、前記第2の処理モジュールから前記識別情報を取得することを特徴とする請求項4に記載の撮像装置。
- 前記第1の処理モジュールは、出力対象の情報と共に、前記識別情報を前記第2の処理モジュールへ出力することを特徴とする請求項5に記載の撮像装置。
- 前記出力先は、データを出力する処理モジュール自身、データを出力する処理モジュールと異なる他の処理モジュール及び前記ユーザインターフェイス提供モジュールのうち少なくとも1つであることを特徴とする請求項2乃至6の何れか1項に記載の撮像装置。
- コンピュータを、請求項1乃至7の何れか1項に記載の撮像装置の各モジュールとして機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017218275A JP2019091993A (ja) | 2017-11-13 | 2017-11-13 | 撮像装置及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017218275A JP2019091993A (ja) | 2017-11-13 | 2017-11-13 | 撮像装置及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019091993A true JP2019091993A (ja) | 2019-06-13 |
Family
ID=66836713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017218275A Pending JP2019091993A (ja) | 2017-11-13 | 2017-11-13 | 撮像装置及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019091993A (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006020298A (ja) * | 2004-06-03 | 2006-01-19 | Canon Inc | 機能設定システム、撮像装置、データ処理装置、機能設定方法および機能設定プログラム |
WO2017179099A1 (ja) * | 2016-04-11 | 2017-10-19 | オリンパス株式会社 | 画像処理装置 |
-
2017
- 2017-11-13 JP JP2017218275A patent/JP2019091993A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006020298A (ja) * | 2004-06-03 | 2006-01-19 | Canon Inc | 機能設定システム、撮像装置、データ処理装置、機能設定方法および機能設定プログラム |
WO2017179099A1 (ja) * | 2016-04-11 | 2017-10-19 | オリンパス株式会社 | 画像処理装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018072634A1 (zh) | 应用程序处理方法和装置 | |
US10432747B2 (en) | Offline mobile capture | |
JP6331504B2 (ja) | 電子機器、及び情報処理システム | |
CN113568666B (zh) | 图像的处理方法、装置、存储介质和处理器 | |
US20160283069A1 (en) | Visual Representation of an Email Chain | |
CN113722055A (zh) | 数据处理方法、装置、电子设备和计算机可读介质 | |
JP2019091993A (ja) | 撮像装置及びプログラム | |
CN110892430A (zh) | 通过文件附件的分析和数据可视化 | |
JP6347636B2 (ja) | 画像処理システム、データ管理方法及びプログラム | |
JP6343223B2 (ja) | 内視鏡業務支援装置 | |
JP2021101319A (ja) | 情報処理装置及び情報処理プログラム | |
JP6877959B2 (ja) | 情報処理装置及び情報処理プログラム | |
KR102084564B1 (ko) | 얼굴인식 사진 공유 시스템 및 방법 | |
JP6987532B2 (ja) | 情報処理装置、情報処理システム、情報処理方法及びプログラム | |
JP5936362B2 (ja) | 情報処理装置、情報処理方法 | |
CN112579144B (zh) | 数据处理方法及装置 | |
WO2014069276A1 (ja) | 内視鏡システム | |
JP2015115011A (ja) | 通信機器、機器設定装置、撮像装置およびそれらの制御方法、システム、並びにプログラム | |
JP4138396B2 (ja) | データファイリング方法および装置並びにプログラム | |
CN114416381B (zh) | 处理资源超分方法、装置、设备及存储介质 | |
CN112214625B (zh) | 用于处理图像的方法、装置、设备以及存储介质 | |
JP2018006957A (ja) | 画像記録装置、画像記録装置の制御方法及びプログラム | |
CN113554414B (zh) | 业务规则更新方法、装置、计算机设备和存储介质 | |
JP5223653B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
KR102162017B1 (ko) | 모바일 단말의 어플리케이션을 이용하여 구조물 안전 진단하기 위한 촬영 방법 및 그 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201012 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210629 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20211221 |