JP2016054389A - 通信装置、通信装置の制御方法、プログラム - Google Patents

通信装置、通信装置の制御方法、プログラム Download PDF

Info

Publication number
JP2016054389A
JP2016054389A JP2014179323A JP2014179323A JP2016054389A JP 2016054389 A JP2016054389 A JP 2016054389A JP 2014179323 A JP2014179323 A JP 2014179323A JP 2014179323 A JP2014179323 A JP 2014179323A JP 2016054389 A JP2016054389 A JP 2016054389A
Authority
JP
Japan
Prior art keywords
image
digital camera
request
smart device
received
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.)
Granted
Application number
JP2014179323A
Other languages
English (en)
Other versions
JP6395522B2 (ja
JP2016054389A5 (ja
Inventor
明彦 石津
Akihiko Ishizu
明彦 石津
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2014179323A priority Critical patent/JP6395522B2/ja
Priority to US14/841,364 priority patent/US10235963B2/en
Publication of JP2016054389A publication Critical patent/JP2016054389A/ja
Publication of JP2016054389A5 publication Critical patent/JP2016054389A5/ja
Application granted granted Critical
Publication of JP6395522B2 publication Critical patent/JP6395522B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4092Image resolution transcoding, e.g. by using client-server architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • H04N21/43637Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wireless protocol, e.g. Bluetooth, RF or wireless LAN [IEEE 802.11]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • H04N21/8153Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics comprising still images, e.g. texture, background image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices
    • H04N23/661Transmitting camera control signals through networks, e.g. control via the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • H04N5/772Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera the recording apparatus and the television camera being placed in the same enclosure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • H04N9/8047Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/82Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
    • H04N9/8205Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
    • H04N9/8227Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being at least another television signal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/16Use of wireless transmission of display information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Studio Devices (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

【課題】外部装置からの要求に対するレスポンス速度を速める通信装置、通信装置の制御方法、プログラムを提供する。
【解決手段】外部装置と通信する通信装置であって、画像データを記録媒体から読み出して保持する保持手段と、記録媒体に記録されている画像データをリサイズしてリサイズ画像データを生成するリサイズ手段と、リサイズ画像データの要求およびリサイズ画像データのメタデータの要求を外部装置から受け付ける受け付け手段とを有する。受け付け手段によりリサイズ画像の要求を受け付けた場合、保持手段は、要求を受け付けたリサイズ画像のメタデータを保持し、受け付け手段により、リサイズ画像のメタデータの要求を受け付けた場合、保持手段は、メタデータの要求を受け付けたリサイズ画像を保持する。
【選択図】図4

Description

外部装置と通信することができる通信装置に関する。
近年、デジタルカメラと携帯電話とが無線で接続し、デジタルカメラの機能を携帯電話から利用することが行われている。例えば特許文献1にはデジタルカメラと携帯電話とが無線LANを介して接続し、携帯電話を操作することでデジタルカメラに記録されている画像をリモートで閲覧するシステムが開示されている。
特開2013−162303号公報
上述の特許文献1に開示されるシステムにおいては、単に画像あるいは画像のサムネイルを閲覧するだけでなく、デジタルカメラから画像データを携帯電話に取り込み、保存することも考えられる。そのような場合、オリジナルの画像データのサイズから、より小さなサイズへとリサイズした上で取り込むことが考えられる。更に、リサイズした画像のメタデータかを把握した上で、取り込むべきかどうかを判断することが考えられる。しかしながら、画像のリサイズや、リサイズ後の画像のメタデータの生成には時間がかかる。そのため、携帯電話から要求を受け付けてから、デジタルカメラ100がリサイズ画像やリサイズ画像のメタデータが携帯電話に提供され始めるまでは、いくらかのタイムラグが生じ、ユーザに不快感を与える虞があった。
そこで、本発明は、外部装置からの要求に対するレスポンス速度を速めることを目的とする。
上記の課題を解決するために、本発明の通信装置は、外部装置と通信することができる通信装置であって、画像データを記録媒体から読み出して保持する保持手段と、前記記録媒体に記録されている画像データをリサイズしてリサイズ画像データを生成するリサイズ手段と、前記リサイズ画像データの要求および前記リサイズ画像データのメタデータの要求を前記外部装置から受け付ける受け付け手段とを有し、前記受け付け手段によりリサイズ画像の要求を受け付けた場合、前記保持手段は、前記要求を受け付けたリサイズ画像のメタデータを保持し、前記受け付け手段により、リサイズ画像のメタデータの要求を受け付けた場合、前記保持手段は、前記メタデータの要求を受け付けたリサイズ画像を保持することを特徴とする。
本発明によれば、外部装置からの要求に対するレスポンス速度を速めることができる。
(a)第1の実施形態におけるデジタルカメラのブロック図である。(b)、(c)は、第1の実施形態におけるデジタルカメラの外観図である。 第1の実施形態におけるスマートデバイスの構成を示すブロック図である。 (a)第1の実施形態におけるデジタルカメラが外部機器に公開するAPIを示す図である。(b)第1の実施形態における画像データの構造を示す概念図である。 第1の実施形態におけるシステムのシーケンス図である。 第1の実施形態におけるデジタルカメラの動作を示すフローチャートである。 第1の実施形態におけるスマートデバイスの動作を示すフローチャートである。
以下に、本発明を実施するための形態について、添付の図面を用いて詳細に説明する。
なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されてもよい。また、各実施の形態を適宜組み合せることも可能である。
[第1の実施形態]
<デジタルカメラ100の構成>
図1(a)は、本実施形態の通信装置の一例であるデジタルカメラ100の構成例を示すブロック図である。なお、ここでは通信装置の一例としてデジタルカメラについて述べるが、通信装置はこれに限られない。例えば通信装置は携帯型のメディアプレーヤや、いわゆるタブレットデバイス、パーソナルコンピュータなどの情報処理装置であってもよい。
制御部101は、入力された信号や、後述のプログラムに従ってデジタルカメラ100の各部を制御する。なお、制御部101が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
撮像部102は、例えば、光学レンズユニットと絞り・ズーム・フォーカスなど制御する光学系と、光学レンズユニットを経て導入された光(映像)を電気的な映像信号に変換するための撮像素子などで構成される。撮像素子としては、一般的には、CMOS(Complementary Metal Oxide Semiconductor)や、CCD(Charge Coupled Device)が利用される。撮像部102は、制御部101に制御されることにより、撮像部102に含まれるレンズで結像された被写体光を、撮像素子により電気信号に変換し、ノイズ低減処理などを行いデジタルデータを画像データとして出力する。本実施形態のデジタルカメラ100では、画像データは、DCF(Design Rule for Camera File system)の規格に従って、記録媒体110に記録される。
不揮発性メモリ103は、電気的に消去・記録可能な不揮発性のメモリであり、制御部101で実行される後述のプログラム等が格納される。
作業用メモリ104は、撮像部102で撮像された画像データを一時的に保持するバッファメモリや、表示部106の画像表示用メモリ、制御部101の作業領域等として使用される。
操作部105は、ユーザがデジタルカメラ100に対する指示をユーザから受け付けるために用いられる。操作部105は例えば、ユーザがデジタルカメラ100の電源のON/OFFを指示するための電源ボタンや、撮影を指示するためのレリーズスイッチ、画像データの再生を指示するための再生ボタンを含む。さらに、後述の通信部111を介して外部機器との通信を開始するための専用の接続ボタンなどの操作部材を含む。また、後述する表示部106に形成されるタッチパネルも操作部105に含まれる。なお、レリーズスイッチは、SW1およびSW2を有する。レリーズスイッチが、いわゆる半押し状態となることにより、SW1がONとなる。これにより、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の撮影準備を行うための指示を受け付ける。また、レリーズスイッチが、いわゆる全押し状態となることにより、SW2がONとなる。これにより、撮影を行うための指示を受け付ける。
表示部106は、撮影の際のビューファインダー画像の表示、撮影した画像データの表示、対話的な操作のための文字表示などを行う。なお、表示部106は必ずしもデジタルカメラ100が内蔵する必要はない。デジタルカメラ100は内部又は外部の表示部106と接続することができ、表示部106の表示を制御する表示制御機能を少なくとも有していればよい。
記録媒体110は、撮像部102から出力された画像データをファイルとして記録することができる。なお、デジタルカメラ100におけるファイル管理のためのシステムとしては、例えばFAT(File Allocation Table)を採用することができる。記録媒体110は、デジタルカメラ100に着脱可能なよう構成してもよいし、デジタルカメラ100に内蔵されていてもよい。すなわち、デジタルカメラ100は少なくとも記録媒体110にアクセスする手段を有していればよい。
通信部111は、外部装置と接続するためのインターフェイスである。本実施形態のデジタルカメラ100は、通信部111を介して、外部装置とデータのやりとりを行うことができる。例えば、撮像部102で生成した画像データを、通信部111を介して外部装置に送信することができる。本実施形態では、通信部111は外部装置とIEEE802.11の規格に従った、いわゆる無線LANで通信するためのインターフェイスを含み、制御部101は、通信部111を制御することで外部装置との無線LANを介した通信を実現する。この無線LANでの通信においては、外部装置とは、直接接続してもよいしアクセスポイントを介して接続してもよい。また、データを通信するためのプロトコルとしては、例えばHTTP(Hyper Text Transfer Protocol)を用いることができる。そのほか、PTP/IP(Picture Transfer Protocol over Internet Protocol)を用いることもできる。なお、通信方式は無線LANに限定されるものではなく、例えば赤外線通信方式、Bluetooth(登録商標)通信方式、WirelessUSB等の無線通信方式などを採用することもできる。さらには、USBケーブルやHDMI(登録商標)、IEEE1394、Ethernet(登録商標)など、有線接続を採用してもよい。
近距離無線通信部112は、例えば無線通信のためのアンテナと無線信号を処理するため変復調回路や通信コントローラから構成される。近距離無線通信部112は、変調した無線信号をアンテナから出力し、またアンテナで受信した無線信号を復調することで近距離無線通信を実現する。ここでは、ISO/IEC 18092の規格(いわゆるNFC:Near Field Communication)に従った近距離無線通信を実現する。またその他、赤外線通信方式、Bluetooth(登録商標)通信方式、WirelessUSB等の無線通信方式などに従った近距離無線通信を採用してもよい。なお、近距離無線通信部112としてBluetooth(登録商標)通信方式を採用する場合、例えば低消費電力であるBluetooth(登録商標) Low Energyのバージョン4.0を採用することができる。このBluetooth(登録商標)通信は、無線LAN通信と比べて通信可能な範囲が狭い(つまり、通信可能な距離が短い)。また、Bluetooth(登録商標)通信は、無線LAN通信と比べて通信速度が遅い。その一方で、Bluetooth(登録商標)通信は、無線LAN通信と比べて消費電力が少ない。
本実施形態の近距離無線通信部112は、デジタルカメラ100の側部に配される。
本実施形態において、後述するスマートデバイス200とは、通信部111より通信を開始して接続される。また、本実施形態におけるデジタルカメラ100の通信部111は、インフラストラクチャモードにおけるアクセスポイントとして動作するAPモードと、インフラストラクチャモードにおけるクライアントとして動作するCLモードとを有している。そして、通信部111をCLモードで動作させることにより、本実施形態におけるデジタルカメラ100は、インフラストラクチャモードにおけるクライアント機器(以下、CL機器)として動作することが可能である。デジタルカメラ100がCL機器として動作する場合、周辺のアクセスポイント機器(以下、AP機器)に接続することで、AP機器が形成するネットワークに参加することができる。また、通信部111をAPモードで動作させることにより、本実施形態におけるデジタルカメラ100は、APの一種ではあるが、より機能が限定された簡易的なAP(以下、簡易AP)として動作することも可能である。デジタルカメラ100が簡易APとして動作すると、デジタルカメラ100は自身でネットワークを形成する。デジタルカメラ100の周辺の装置は、デジタルカメラ100をAP機器と認識し、デジタルカメラ100が形成したネットワークに参加することが可能となる。上記のようにデジタルカメラ100を動作させるためのプログラムは不揮発性メモリ103に保持されているものとする。
なお、本実施形態におけるデジタルカメラ100はアクセスポイントの一種であるものの、CL機器から受信したデータをインターネットプロバイダなどに転送するゲートウェイ機能は有していない簡易APである。したがって、自機が形成したネットワークに参加している他の装置からデータを受信しても、それをインターネットなどのネットワークに転送することはできない。
次に、デジタルカメラ100の外観について説明する。図1(b)、図1(c)はデジタルカメラ100の外観の一例を示す図である。レリーズスイッチ105aや再生ボタン105b、方向キー105c、タッチパネル105dは、前述の操作部105に含まれる操作部材である。また、表示部106には、撮像部102による撮像の結果得られた画像が表示される。
以上がデジタルカメラ100の説明である。
<スマートデバイス200の構成>
図2は、本実施形態の情報処理装置の一例であるスマートデバイス200の構成例を示すブロック図である。なお、スマートデバイスとはスマートフォンやタブレットデバイスを意味する。なお、ここでは情報処理装置の一例としてスマートデバイスについて述べるが、情報処理装置はこれに限られない。例えば情報処理装置は、無線機能付きのデジタルカメラやプリンタ、テレビ、あるいはパーソナルコンピュータなどであってもよい。
制御部201は、入力された信号や、後述のプログラムに従ってスマートデバイス200の各部を制御する。なお、制御部201が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
撮像部202は、撮像部202に含まれるレンズで結像された被写体光を電気信号に変換し、ノイズ低減処理などを行い、デジタルデータを画像データとして出力する。撮像した画像データはバッファメモリに蓄えられた後、制御部201にて所定の演算を行い、記録媒体210に記録される。
不揮発性メモリ203は、電気的に消去・記録可能な不揮発性のメモリである。不揮発性メモリ203には、制御部201が実行する基本的なソフトウェアであるOS(オペレーティングシステム)や、このOSと協働して応用的な機能を実現するアプリケーションが記録されている。また、本実施形態では、不揮発性メモリ203には、デジタルカメラ100と通信するためのアプリケーション(以下アプリ)が格納されている。
作業用メモリ204は、表示部206の画像表示用メモリや、制御部201の作業領域等として使用される。
操作部205は、スマートデバイス200に対する指示をユーザから受け付けるために用いられる。操作部205は例えば、ユーザがスマートデバイス200の電源のON/OFFを指示するための電源ボタンや、表示部206に形成されるタッチパネルなどの操作部材を含む。
表示部206は、画像データの表示、対話的な操作のための文字表示などを行う。なお、表示部206は必ずしもスマートデバイス200が備える必要はない。スマートデバイス200は表示部206と接続することができ、表示部206の表示を制御する表示制御機能を少なくとも有していればよい。
記録媒体210は、撮像部202から出力された画像データを記録することができる。なお、スマートデバイス200におけるファイル管理のためのシステムとしては、例えばFATを採用することができる。記録媒体210は、スマートデバイス200に着脱可能なよう構成してもよいし、スマートデバイス200に内蔵されていてもよい。すなわち、スマートデバイス200は少なくとも記録媒体210にアクセスする手段を有していればよい。
通信部211は、外部装置と接続するためのインターフェイスである。本実施形態のスマートデバイス200は、通信部211を介して、外部装置とデータのやりとりを行うことができる。例えば、撮像部202で生成した画像データを、通信部211を介して外部装置に送信することができる。本実施形態では、通信部211は外部装置とIEEE802.11の規格に従った、いわゆる無線LANで通信するためのインターフェイスを含み、制御部201は、通信部211を制御することで外部装置との無線LANを介した通信を実現する。この無線LANでの通信においては、外部装置とは、直接接続してもよいしアクセスポイントを介して接続してもよい。また、データを通信するためのプロトコルとしては、例えばHTTPやPTP/IPを用いることができる。なお、通信方式は無線LANに限定されるものではなく、例えば赤外線通信方式、Bluetooth(登録商標)通信方式、WirelessUSB等の無線通信方式などを採用こともできる。さらには、USBケーブルやHDMI(登録商標)、IEEE1394、Ethernet(登録商標)など、有線接続を採用してもよい。
近距離無線通信部212は、例えば無線通信のためのアンテナと無線信号を処理するための変復調回路や通信コントローラから構成される。近距離無線通信部212は、変調した無線信号をアンテナから出力し、またアンテナで受信した無線信号を復調することにより非接触近距離通信を実現する。ここでは、ISO/IEC 18092の規格(いわゆるNFC)に従った近距離無線通信を実現する。またその他、赤外線通信方式、Bluetooth(登録商標)通信方式、WirelessUSB等の無線通信方式などに従った近距離無線通信を採用してもよい。なお、近距離無線通信部112としててBluetooth(登録商標)通信方式を採用する場合、例えば低消費電力であるBluetooth(登録商標)Low Energyのバージョン4.0を採用することができる。このBluetooth(登録商標)通信は、無線LAN通信と比べて通信可能な範囲が狭い(つまり、通信可能な距離が短い)。また、Bluetooth(登録商標)通信は、無線LAN通信と比べて通信速度が遅い。その一方で、Bluetooth(登録商標)通信は、無線LAN通信と比べて消費電力が少ない。
公衆網通信部213は、公衆無線通信を行う際に用いられるインターフェイスである。スマートデバイス200は、公衆網通信部213を介して、他の機器と通話することができる。この際、制御部201はマイク214およびスピーカ215を介して音声信号の入力と出力を行うことで、通話を実現する。更に、本実施形態では、公衆網通信部213はW−CDMA(UMTS)やLTE(Long Term Evolution)等の規格に従って公衆網に接続することができる。なお、通信部211および公衆網通信部213は、一つのアンテナで兼用することも可能である。
以上がスマートデバイス200の説明である。
<デジタルカメラを外部装置から制御するためのAPIについて>
図3(a)は、外部機器からデジタルカメラ100を制御するためのAPI(Application Programming Interface)について説明するための図である。
デジタルカメラ100は、スマートデバイス200などの外部機器から制御するためのAPIを公開しており、このAPIを利用することで、外部装置の開発者は、簡単なコマンド指定のみで、様々な処理を手軽に実装することができる。例えば本実施形態では、このAPIを通してデジタルカメラ100の不揮発性メモリ103に記録されたデバイス情報や、デジタルカメラ100の記録媒体110などに保存されたコンテンツファイルをデジタルカメラ100から取得することができる。コンテンツファイルとは、デジタルカメラ100が生成して記録媒体110や不揮発性メモリ103に保存するファイルのことであり、本実施形態では、静止画ファイルや動画ファイルのことを指す。なお、この他、例えば音声ファイル、音楽ファイル、HTMLなどのマークアップ言語ファイル等を外部機器に提供できるようにしてもよい。以下では、説明を簡単にするために、主に静止画ファイルを例に挙げて説明する。
デジタルカメラ100は、予め不揮発性メモリ103にAPIをプログラムとして保存している。通信部111を介して、デジタルカメラ100と外部機器との通信が確立すると、APIを実行するためのプログラムを作業用メモリ104に展開し、外部装置からAPIがリクエストされるのを待つ。制御部101が外部機器からAPIがリクエストされたことを検知すると、APIの種類に応じて処理を実行し、その結果をレスポンスとして外部機器に返却する。なお、APIはデジタルカメラ100が規定した通信プロトコル上で実行され、外部機器は規定された通信プロトコルを用いてデジタルカメラ100と通信を行い、APIをリクエストする。本実施形態では、HTTP(Hyper Text Transfer Protocol)上で本APIが実行されることを想定して説明するが、他の通信プロトコル(例えばPTP/IP等)を採用してもよい。
HTTPにおけるAPIの実行方法については、基本的に以下の手順で実現される。すなわち、外部機器がHTTPリクエストボディにAPI名と必要な引数をテキストで記述し、GETメソッドもしくはPOSTメソッドを用いてデジタルカメラ100に送信することで、APIの実行を要求する。これに対して、デジタルカメラ100は、HTTPレスポンスボディにその結果を付加して外部機器にレスポンスとして返却することで、APIの実行結果を提供する。なお、以下の説明では、このAPIを利用してリクエストを送信するための処理を実行することを、APIをコールする、とも記載する。
図3(a)のAPIリスト300は、前述した仕組みで動作する、デジタルカメラ100が提供するAPIの種類とその説明を表にしたものである。なお、以下に挙げるAPIは一例であり、デジタルカメラ100を制御するAPIとして、以下に挙げるAPI以外のものも提供されてもよい。
API301は、デジタルカメラ100の製品情報を取得するためのAPIである。API名「RequestProductInfo」を引数なしでデジタルカメラ100にリクエストすると、レスポンスとしてデジタルカメラ100の製品名、製造者名、ファームウェアバージョン、シリアルナンバーをデジタルカメラ100から取得できる。なお、製品名とは、デジタルカメラ100の製品名称である。製造者名とはデジタルカメラ100のメーカー名称である。ファームウェアバージョンとは、不揮発性メモリ103に保存されたデジタルカメラ100を制御するためのプログラムのバージョン番号である。シリアルナンバーとは、デジタルカメラ100の個体識別が可能な一意の番号である。
API302は、デジタルカメラ100の保存領域の情報を取得するためのAPIである。API名「RequestMemoryInfo」をデジタルカメラ100にリクエストすると、レスポンスとしてデジタルカメラ100の保存領域ID、保存可能容量、空き容量、保存済みのコンテンツファイル数をデジタルカメラ100から取得できる。このリクエストは引数なしで行われる。なお、保存領域IDとは、デジタルカメラ100で生成されるコンテンツファイルを保存可能な領域にそれぞれ割り振られたID(Identification)である。コンテンツファイルを保存可能な領域とは、例えば、デジタルカメラ100の記録媒体110などであり、IDはこの記録媒体110に割り振られる。もし記録媒体を複数挿入できる場合には、それぞれの記録媒体に異なるIDが割り振られる。保存可能容量とは、コンテンツファイルを保存できる保存領域の上限サイズである。空き容量とは、保存領域のうちコンテンツファイルが保存されていない領域のサイズである。保存済みのコンテンツ数とは、保存領域に保存されているコンテンツファイルの総数のことである。
API303は、デジタルカメラ100の保存領域に保存されているコンテンツIDとコンテンツファイルの管理情報を取得するためのAPIである。ここでいう管理情報は、コンテンツが記録されるディレクトリ内のファイルやディレクトリの情報を管理するための管理領域(いわゆるディレクトリエントリと呼ばれる、ディレクトリ毎に確保される領域)内に記録されている。API名「RequestConteentInfo」と共に、API302で取得した保存領域ID、コンテンツフォーマットの種類、取得要求数を指定してリクエストすると、レンポンスとして以下の情報をデジタルカメラ100から取得できる。すなわち、デジタルカメラ100の保存領域に保存されているコンテンツファイルのコンテンツID、ファイル名、ファイルサイズ、ファイル生成日時等である。なお、ここでいうコンテンツIDは、コンテンツファイルを個々に識別するために、デジタルカメラ100の制御部101によって自動的に割り振られるIDである。なお、デジタルカメラ100内のファイル管理のためのIDとは別に、API303を利用するスマートデバイス200との通信中に一時的に用いるためのIDを別途割り振り、それをコンテンツIDとして用いてもよい。
API304は、デジタルカメラ100の保存領域に保存されているコンテンツファイルを取得するためのAPIである。API名「RequestConent」と共に、コンテンツIDとコンテンツサイズの種類を指定してリクエストすると、レスポンスとしてコンテンツファイルをデジタルカメラ100から取得できる。なお、コンテンツサイズの種類としては、例えばオリジナルや縮小サイズ等を指定することができる。そして、デジタルカメラ100は指定されたサイズに従ったコンテンツファイルを生成し外部装置へレスポンスとして返却する。本実施形態では、コンテンツサイズの種類として、例えば静止画ファイルをオリジナルのサイズで取得するのか、サムネイルサイズで取得するのかを指定できる。オリジナルを指定すれば、デジタルカメラ100に記録されている画像データを取得する。サムネイルを指定すれば、デジタルカメラ100に記録されている画像データのヘッダに記録されているサムネイルを取得する。また、例えばデジタルカメラ100が、画像をリサイズする機能を備えている場合には、引数として「リサイズ」を指定し、更にサイズを指定すれば、デジタルカメラ100は指定されたサイズに画像を縮小して送信する。なお、サイズを指定しない場合には、予め決められているサイズにリサイズするようにしてもよい。なお、リサイズの具体的な例としては、画素を間引きして静止画データのサイズを減らす処理等が挙げられる。以下の説明では、デジタルカメラ100は、リサイズ機能を有するものとして説明する。
API305は、デジタルカメラ100の保存領域に保存されているコンテンツファイルの詳細情報(いわゆるメタデータ)を取得するAPIである。API名「RequestContentDetailInfo」と共に、コンテンツIDを引数としてリクエストすると、指定したコンテンツIDに対応するコンテンツの詳細情報を取得できる。なお、API304と同様に、コンテンツサイズの種類を指定する引数を利用することも可能である。また、API304と同様に、コンテンツサイズの種類として、例えばオリジナルや縮小サイズ等を指定することができる。また、例えばデジタルカメラ100が、画像をリサイズする機能を備えている場合には、ここで引数として「リサイズ」を指定することもできる。リサイズが指定されたならば、デジタルカメラ100は画像データの詳細情報ではなく、リサイズした後の画像データの詳細情報を送信する。
本実施形態における詳細情報とは、いわゆるメタデータであり、例えば静止画ファイルのExif情報である。なお、Exif(Exchangeable image file format)とは、JEIDA(日本電子工業振興協会)が策定したデジタルカメラ用の画像メタデータのフォーマットである。Exif情報は、画像データのヘッダに記録されている情報であるため、内容を把握するためには画像データのヘッダの読出しと解析が必要である。なお、本APIの実装により、カメラ側で画像のヘッダを解析して、スマートデバイス200が解釈可能なフォーマットでメタデータを取得できるため、スマートデバイス200側では画像のExifを解析する必要はない。すなわち、例えばAPI304の利用によって受信した画像データのExifを解析する機能を持っていなくとも、デジタルカメラ100からメタデータを取得することで、メタデータを取得することができる。なお、画像データのヘッダの解析にはある程度の時間が必要である。故に、ディレクトリエントリに記録されている管理情報に比べて、データとして送信できるようになるまでの時間が長い。
ここで、本実施形態における画像データの構成について説明する。図3(b)は、本実施形態での画像データの構成の概念図である。この画像データは、例えばデジタルカメラ100により生成され、記録媒体110のデータ記録領域に記録されるものである。
本実施形態の画像ファイルのデータ構造は、画像ファイルの形式にExif−JPEGを用いるが、Exif−TIFFやRAW画像、動画など、画像ファイルにメタデータが記録できるデータ構造になっている形式でもよい。
図3(b)のExif−JPEG310において、SOI311は、Exif−JPEG310の開始を示すマーカーである。APP1 312は、Exif−JPEG310のヘッダ部に相当するアプリケーションマーカである。データブロック313は、量子化テーブル(DQT)、ハフマンテーブル(DHT)、フレーム開始マーカー(SOF)、スキャン開始マーカ(SOS)で構成されるデータブロックである。Compressed Data314は、本体画像の圧縮データである。EOI315は、Exif−JPEG310の終端を示すマーカーである。
また、APP1 312は、図3(b)のデータブロック316〜322で示すように構成される。データブロック316は、APP1 312のサイズを示すAPP1 Length、APP1 312の識別コードを示すExif Identifier Codeで構成されるデータブロックである。0th IFD317は、圧縮された本体画像に関する付属情報を記録するデータブロックである。例えば、撮像したデジタルカメラのモデル名の情報が含まれる。0th IFD317の一部には、Exif IFD318とGPS IFD320のデータブロックが存在する。
Exif IFD318は、Exifバージョンに関するタグ、画像データの特性や構造に関するタグ、撮像日時に関するタグ、シャッタースピードやレンズ焦点距離などが記録された撮像条件に関するタグなどで構成される。また、Exif IFD318には、MakerNote319のデータブロックが存在する。MakerNote319は、ファイルを生成したメーカ固有の情報が記録されている。例えば、時差情報や、撮像に用いられたデジタルカメラ100のユニークな番号を表すシリアル番号などの情報が含まれる。このMakerNote319に記載される情報は、メーカ毎に個別の仕様が採用されている。そのため、MakerNote319に記録されるデータのフォーマットの仕様が公開されていない限り、他のメーカの製品やアプリケーションからは、MakerNote319に記録されている情報を把握することは難しい。API305は、このような問題を解決するためにも利用することができる。すなわち、API305を利用すれば、MakerNote319の解析もデジタルカメラ100が実行し、スマートデバイス200が認識できる形でデータを取得することができる。そのため、APIを利用する側の装置やアプリが、MakerNote319を解析する機能を備えていなくとも、MakerNote319に記録されている情報の内容を把握することができる。
GPS IFD320は、GPS情報に関するタグで構成される。その中には、本実施例で使用する緯度、経度といった位置情報や、衛星測位日時(UTC)が記録される。
1st IFD321は、サムネイル画像に関する付属情報を記録するデータブロックである。Thumbnail322は、サムネイルの画像データである。
以上が、本実施形態の画像データの構造の説明である。
<システムのシーケンス>
次に、本実施形態におけるデジタルカメラ100とスマートデバイス200とが協働して実現する画像データの閲覧手順について説明する。
図4は、本実施形態におけるデジタルカメラ100とスマートデバイス200とが協働して実現するデータの閲覧手順を示すシーケンス図である。
まず、ステップS401において、デジタルカメラ100およびスマートデバイス200は、互いに通信パラメータを共有し、互いに同一のネットワークに参加する。ここで両機器が参加するネットワークは、両機器とは異なる他の機器であるアクセスポイントが生成したものであってもよいし、両機器のどちらかが簡易APとして動作して生成してもよい。本実施形態では、デジタルカメラ100が簡易APとして動作して無線LANネットワークを形成する場合を例に挙げて説明する。デジタルカメラ100は簡易APとして動作すると、ビーコン信号の定期的な送信を開始する。一方スマートデバイス200にてメニュー操作により接続開始が指示されると、スマートデバイス200はビーコン信号を検知し、デジタルカメラ100が形成した無線LANネットワークに参加する。なお、通信パラメータの共有は、各機器をユーザが操作することで(例えばスマートデバイス200でのSSIDの選択や、デジタルカメラ100での無線LAN機能の起動を指示するメニュー操作等)実現する。あるいは、近距離無線通信を介してデジタルカメラ100からスマートデバイス200にSSIDやパスワードを送信することで共有してもよい。この場合、近距離無線通信でのSSIDやパスワードの共有に応じて無線LAN機能を自動的に起動するように構成される。
次に、ステップS402において、デジタルカメラ100およびスマートデバイス200は、機器発見プロトコルによりお互いのデバイスを発見し、データ通信を行うためのプロトコル接続をすることにより機器同士の接続が完了する。互いのデバイスの発見には、例えばUPnP(Universal Plug And Play)や、mDNS(Multicast Domain Name Service)などのプロトコルを用いる。また、データ通信を行うためのプロトコルとしては、例えば、PTP/IPを採用することができる。
次に、ステップS403において、スマートデバイス200は、デジタルカメラ100に対して、製品情報を取得するRequestProductInfo APIをコールする。すなわち、デジタルカメラ100に対して製品情報を要求する。
これに対し、ステップS404においてデジタルカメラ100は、図3(a)に示すRequestProductInfoに応じた処理を行い、結果をスマートデバイス200に対して返却する。ここでは、デジタルカメラ100は、要求の受信に応じて不揮発性メモリ103に記録されている製品名、製造者名、ファームウェアバージョン、シリアルナンバーなどを読み出し、スマートデバイス200に製品情報として送信する。
続くステップS405において、スマートデバイス200は、デジタルカメラ100に対して、保存領域の情報を取得するRequestMemoryInfo APIをコールする。すなわち、デジタルカメラ100に対して保存領域の情報を要求する。
これに対し、ステップS406においてデジタルカメラ100は、図3(a)に示すRequestMemoryInfoに応じた処理を行い、結果をスマートデバイス200に対して返却する。具体的には、デジタルカメラ100は保存領域の情報として、保存領域ID、保存可能容量、空き容量、保存済みコンテンツ数などをスマートデバイス200に送信する。
次に、ステップS407において、スマートデバイス200はサムネイル一覧を表示するために、デジタルカメラ100に保存されている画像の管理情報を取得するRequestContentInfo APIをコールする。すなわち、デジタルカメラ100に対して、保存されている画像の管理情報を要求する。なお、本ステップでのRequestContentInfo APIのコールにおいては、ステップ406で取得した保存領域の情報を引数に利用する。また、ステップS407の処理は、ステップS406の完了に応じて自動的に実行されてもよいし、例えばユーザの操作によって、サムネイル一覧を表示するための指示を受け付けたことに応じて実行されてもよい。図4では、ユーザからの指示に応じて実行される場合を例示する。
次に、この要求に対し、ステップS408でデジタルカメラ100は、図3(a)に示すRequestContentInfoに応じた処理を行い、結果をスマートデバイスに対して返却する。具体的には、デジタルカメラ100はコンテンツID、コンテンツファイル名、コンテンツファイルサイズ、コンテンツ生成日時などを、画像が保存されているディレクトリのディレクトリエントリから読み出し、スマートデバイス200に送信する。
ステップS407とステップS408の処理は、スマートデバイス200の表示部206に表示するサムネイルの数だけ繰り返される。図4では、後述のステップによって取得されたサムネイルが一画面に15つ表示される例を示している。この場合、ステップS407とステップS408は15回繰り返され、一画面に表示するサムネイルに対応する画像の管理情報を取得する。なお、一度のRequestContentInfo APIのコールで、複数の管理情報を取得できるようにしてもよい。この場合、RequestContentInfo APIの引数には、取得する管理情報の範囲を指定する。具体的には、取得対象範囲1−15のように指定する。このように指定した場合、デジタルカメラ100側が所定の順番で管理する各画像の管理情報のうち1番目の画像の管理情報から15番目の画像の管理情報までの15の管理情報がレスポンスとして返される。例えば、画像の生成順に管理情報が返される。
次に、ステップS409において、スマートデバイス200は、ステップS408でデジタルカメラ100から受信した画像の管理情報に基づき、表示するサムネイルを取得するためのRequestContent APIをコールする。すなわち、スマートデバイス200は画像情報を取得した画像のIDを引数に用いて、画像のサムネイルをデジタルカメラ100に要求する。
これに対し、ステップS410でデジタルカメラ100は、図3(a)に示すRequestContentに応じた処理を行い、サムネイルデータをスマートデバイス200に対して返却する。すなわち、コールされたAPIの引数に含まれる画像のIDに基づき決定される画像のヘッダを解析してサムネイルデータを読み出し、スマートデバイス200に送信する。
ステップS409とステップS410の処理は、表示すべきサムネイルを取得しきるまで繰り返される。なお、ステップS409とステップS410の処理によって取得されるサムネイルは、繰り返しの完了を待つことなく、スマートデバイス200の表示部206に順次表示される。この結果、例えばスマートデバイス200の表示部206には、画面451のようなサムネイル一覧が表示されることになる。
なお、この画面451に表示されるサムネイルに対応する画像以外の画像に関する管理情報やサムネイルについては、他のサムネイルの表示指示が入力されたときに、改めてステップS407〜ステップS410の処理を実行して取得すればよい。なお、サムネイル一覧画面においては、例えばタッチパネルへのタッチ操作によって、他のサムネイルを閲覧するための指示を入力することができるものとする。サムネイル一覧の更新については、例えば、上向きのドラッグ操作やフリック操作に応じて、現在表示中のサムネイルは上向きにスクロールアウトしていき、新たに、次のサムネイル群が下からスクロールインしてくるような表示態様で画面が更新される。この際に、ステップS407〜S410の処理によって、次のサムネイル群の管理情報とサムネイルを取得する。
また、サムネイル一覧が表示されている状態において、ユーザは操作部205を介して、いずれかのサムネイルを選択して、本画像のプレビューやメタデータの確認を行うことができる。以下の説明では、操作部205としてタッチパネルを採用した場合の操作を例に挙げて説明する。
まず、サムネイル一覧が表示されている状態で、スマートデバイス200に取り込みたい画像を選択することを考える。図3(a)の説明でも述べたように、本実施形態のデジタルカメラ100は、リサイズ機能を有する。すなわち、画像のサイズを変更して画像容量を小さく(以下、リサイズ)することで、画像データの送信に要する時間を短縮することができる。また、スマートデバイス200のような携帯機器で記録できるデータ量は、デスクトップパソコン等のHDDに比べて少ないため、データサイズを小さくして保持していたいというニーズもある。
また、スマートデバイス200の画面はデジタルカメラ100で撮像して得られる画像の画素の全てを有効に利用することはできないのが一般的である。なぜなら、デジタルカメラ100で撮像して得られる画像の画素数は、一般にスマートデバイス200の表示部206の解像度に比べて大きいからである。このような理由から、スマートデバイス200で保持する画像として十分な画素数まで、画像の画素を間引くことで、データサイズを小さくしたリサイズ画像の方が好ましいとユーザが判断することも考えられる。
そこで、本実施形態のスマートデバイス200では、デジタルカメラ100から画像を取り込む場合、オリジナルサイズで取り込むかリサイズして取り込むかを、予め設定しておくことができるようにする。例えば、スマートデバイス200の表示部206に表示されているサムネイル一覧の上部または下部に、メニューを表示するためのボタンを表示し、スマートデバイス200のユーザがこれを選択すれば、画像取り込みの際のサイズを設定するメニューを表示する。ユーザは、上記のデータ量等を勘案して、所望のデータサイズを選択することで、取り込む画像のサイズを設定することができる。
更に、画像を取り込む際、ユーザはサムネイルの内容を見て取り込む画像を決定するケースと、メタデータの内容を確認して取り込む画像を決定するケースとが考えられる。更に、例えば、もし取り込んだ場合にどの程度のデータ量となるかを確かめるためにメタデータを確認する場合には、オリジナルの画像のメタデータを確かめたい場合と、リサイズ後の画像のメタデータを確かめたい場合とが考えられる。
従って、スマートデバイス200の表示部206に画面451のようなサムネイル一覧が表示されている状態から、ユーザが、スマートデバイス200に取り込みたい画像を決定する手順のケースとしては、以下の4つのケースが考えられる。
すなわち、本画像のメタデータの要求の前に本画像を要求する場合(ケース1)と、本画像の要求の前に本画像のメタデータを要求する場合(ケース2)とが考えられる。また、リサイズ画像のメタデータの要求の前にリサイズ画像を要求する場合(ケース3)と、リサイズ画像の要求の前にリサイズ画像のメタデータを要求する場合(ケース4)とが考えられる。
以下では、この4つのケースのそれぞれについて説明する。
・ケース1:本画像のメタデータの要求の前に本画像を要求する場合
この場合、まず、ステップS411にてスマートデバイス200がユーザから、サムネイル一覧の中から所望の一枚のプレビュー表示の指示を受け付ける。例えばユーザは、サムネイルの表示領域を二本指でタッチすることで、サムネイルに対応する画像を取得する指示を入力することができる。なお、二本指でのタッチ操作は一例であり、他の処理に割り当てられる操作との区別がつけば、他の操作を採用してもよい。なお、この指示の入力に先立って、画像取り込みの際にはオリジナルサイズで取り込むことが設定済みであるとする。
さて、画像のプレビュー表示を行うための指示を受け付けたスマートデバイス200は、ステップS412にて、指示されたサムネイルに対応する画像の画像IDを引数に用いて、RequestContent APIをコールする。ここでは、画像サイズの引数は「オリジナル」を示す値が利用される。
これに対し、ステップS413でデジタルカメラ100は、図3(a)に示すRequestContentに応じた処理を行い、画像データをスマートデバイス200に対して返却する。すなわち、要求に含まれる画像IDに対応する画像データをスマートデバイス200に送信する。また、これに併せて、デジタルカメラ100では、ステップS414の処理を実行する。
ステップS414では、デジタルカメラ100は、スマートデバイス200から受信した要求に含まれる画像IDに対応する画像データのヘッダ領域を解析して読み出し、メタデータを作業用メモリ104に保持する。これにより、後にユーザが詳細情報を要求する場合にスムーズに対応することができる。
一方、画像データ受け取ったスマートデバイス200は、デジタルカメラ100から受信した画像データをもとに、ディスプレイに選択された画像のプレビュー表示を行う。この結果、例えばスマートデバイス200の表示部206には、画面452のように一枚の画像が一画面に表示される。なお、この画面での画像の表示は、あくまでもプレビュー表示である。つまり、表示中の画像は作業用メモリ104に一時的に保持されているものであり、未だスマートデバイス200の記録媒体210に保存されていない。それゆえ、サムネイル一覧に戻る場合や、他の画像を閲覧する場合には、作業用メモリ104から削除される。なお、この画像を記録媒体210に保存することの指示は、例えば保存ボタンを表示することで受け付ける。指示を受け付けたならば、作業用メモリ104に保持しているプレビュー表示中の画像を記録媒体210に保存する。後述のプレビュー表示においても同様である。
また、ユーザはこの画面において、プレビュー表示中の画像データの表示領域を一定時間以上タッチする(いわゆる長押し)ことで、プレビュー表示中の画像データに対応する画像の詳細情報を表示させるための指示を入力することができる。なお、長押しの操作は一例であり、前述のプレビュー表示の指示と区別できれば、他の操作を採用してもよい。例えば、タップ、ダブルタップ(所定時間以内に二回のタップを行う操作)等の操作を採用してもよい。
ステップS415にて、スマートデバイス200は、ユーザからプレビュー表示中の画像の詳細情報を表示する指示を受け付ける。
指示を受け付けたスマートデバイス200は、ステップS416にて、プレビュー表示中の画像の詳細情報を取得するRequestContentDetailInfo APIをコールする。すなわち、プレビュー表示中の画像に対応する画像IDを引数に利用して、その画像IDで特定される画像の詳細情報をデジタルカメラ100に要求する。
これに対し、ステップS417でデジタルカメラ100は、図3(a)に示すRequestContentDetailInfoに応じた処理を行い、画像の詳細情報をスマートデバイス200に対して返却する。なお、既にステップS414にて詳細情報を保持しているため、デジタルカメラ100は、再度ヘッダを解析することなく、詳細情報をスマートデバイス200に送信することができる。そして、スマートデバイス200は、デジタルカメラ100から受信した画像の詳細情報をもとに、プレビュー表示中の画像の詳細情報を表示する。例えば、表示する情報として、撮影モードや撮影日時、Av値、Tv値、ISO値、データサイズなどがあげられる。この結果、例えばスマートデバイス200の表示部206には、画面453のようにメタデータがプレビュー表示中の画像に重畳して表示される。なお、ステップS416およびステップS417の処理の実行はステップS415での指示受け付けの後に自動的にバックグラウンドで実行される。そのため、ユーザはあたかも既に受信した画像のメタデータを確認する場合と同様の操作感で、デジタルカメラ100内の画像のメタデータを確認することができる。なお、以降の説明で述べるRequestContentDetailInfo APIのコールとそれに対する応答は、いずれも同様にバックグラウンドで実行される。
以上がケース1の説明である。
・ケース2:本画像の要求の前に本画像のメタデータを要求する場合
この場合、まず、ステップS421にてスマートデバイス200は、ユーザからいずれかのサムネイルに対応する画像の詳細情報を表示する指示を受け付ける。例えばユーザは、サムネイルの表示領域を一定時間以上タッチする(いわゆる長押し)ことで、サムネイルに対応する画像の詳細情報を表示させるための指示を入力することができる。なお、長押しの操作は一例であり、他の操作でもよい。例えば、サムネイルのタップ、ダブルタップ(所定時間以内に二回のタップを行う操作)、二本の指でのタップ等の操作を採用することができる。本実施形態では、ケース1のステップS415でプレビュー表示中の画像の詳細情報を表示する指示を入力する際の操作と同じ操作で、所望のサムネイルに対応する画像の詳細情報を表示する指示を入力することができる。なお、この指示の入力に先立って、画像取り込みの際にはオリジナルサイズで取り込むことが設定済みであるとする。
ユーザからいずれかのサムネイルに対応する画像の詳細情報を表示する指示を受け付けたスマートデバイス200は、ステップS422において、選択された画像の詳細情報を取得するRequestContentDetailInfo APIをコールする。すなわち、ステップS421でユーザに選択されたサムネイルに対応する画像IDを引数に利用して、その画像IDで特定される画像の詳細情報をデジタルカメラ100に要求する。
これに対し、ステップS423でデジタルカメラ100は、図3(a)に示すRequestContentDetailInfoに応じた処理を行い、画像の詳細情報をスマートデバイス200に対して返却する。そして、スマートデバイス200は、デジタルカメラ100から受信した画像の詳細情報をもとに、選択された画像の詳細情報を表示する。この結果、例えばスマートデバイス200の表示部206には、画面454のように、オリジナル画像のメタデータがサムネイル一覧に重畳して表示される。
なお、この状態で更に別のサムネイルの詳細情報を表示する指示を入力した場合には、ステップS422、ステップS423を繰り返し、そのサムネイルに対応する画像の詳細情報を取得して表示する。これに伴い、既に表示されていた詳細情報は非表示となる。これは、複数のサムネイルに詳細情報が表示されていると、サムネイルが見にくくなってしまうからである。なお、同様に、以降のステップでサムネイルを選択したい場合に詳細情報の表示が邪魔となる可能性もあるため、例えば詳細情報が表示されている領域以外の領域にタッチすることで、詳細情報の表示を解除することができるようにする。
次に、ステップS424において、スマートデバイス200は、画面454に表示されるサムネイルのうちのいずれかの画像のプレビュー表示を行うための指示を受け付ける。例えばユーザは、表示されているサムネイルの内容や、ステップS421〜S423の処理により確認できるメタデータ等の情報をもとに、所望の一枚を選択し、より大きなサイズでの画像の内容の確認を指示することができる。この指示の入力には、例えばサムネイルのダブルタップの操作を採用することができる。この操作は、ステップS421での詳細情報を取得するための指示と区別することができれば、他の操作を採用してもよい。
さて、画像のプレビュー表示を行うための指示を受け付けたスマートデバイス200は、ステップS425にて、指示された画像のIDを引数に用いて、RequestContent APIをコールする。ここでは、画像サイズの引数は「オリジナル」を示す値が利用される。
これに対し、ステップS426でデジタルカメラ100は、図3(a)に示すRequestContentに応じた処理を行い、画像データをスマートデバイス200に対して返却する。すなわち、要求に含まれる画像IDに対応する画像データをスマートデバイス200に送信する。
これを受け取ったスマートデバイス200は、デジタルカメラ100から受信した画像データをもとに、ディスプレイに選択された画像のプレビュー表示を行う。この結果、例えばスマートデバイス200の表示部206には、画面455のように一枚の画像が一画面に表示される。
以上が、ケース2の説明である。
・ケース3:リサイズ画像のメタデータの要求の前にリサイズ画像を要求する場合
この場合、まず、ステップS431にてスマートデバイス200がユーザから、サムネイル一覧の中から所望の一枚のプレビュー表示の指示を受け付ける。例えばユーザは、サムネイルの表示領域を二本指でタッチすることで、サムネイルに対応する画像を取得する指示を入力することができる。なお、二本指でのタッチ操作は一例であり、他の処理に割り当てられる操作との区別がつけば、他の操作を採用してもよい。なお、この指示の入力に先立って、画像取り込みの際にはリサイズしたサイズで画像を取り込むことが設定済みであるとする。
さて、画像のプレビュー表示を行うための指示を受け付けたスマートデバイス200は、ステップS432にて、指示された画像のIDを引数に用いて、RequestContent APIをコールする。ここでは、画像サイズの引数は「リサイズ」を示す値が利用される。
これに対し、ステップS433でデジタルカメラ100は、図3(a)に示すRequestContentに応じた処理を行い、画像データをスマートデバイス200に対して返却する。すなわち、要求に含まれる画像IDに対応する画像データをリサイズした上で、スマートデバイス200に送信する。また、これに併せて、デジタルカメラ100では、ステップS434の処理を実行する。
ステップS434では、デジタルカメラ100は、スマートデバイス200から受信した要求に含まれる画像IDに対応する画像データの、リサイズ後の詳細情報を生成し、作業用メモリ104に保持する。これにより、後にユーザがリサイズ画像の詳細情報を要求する場合にスムーズに対応することができる。
一方、画像データ受け取ったスマートデバイス200は、デジタルカメラ100から受信した画像データをもとに、ディスプレイに選択された画像のプレビュー表示を行う。この結果、例えばスマートデバイス200の表示部206には、画面456のように一枚のリサイズ画像が一画面に表示される。
ユーザはこの画面において、プレビュー表示中の画像データの表示領域を一定時間以上タッチする(いわゆる長押し)ことで、プレビュー表示中の画像データに対応する画像の詳細情報を表示させるための指示を入力することができる。なお、長押しの操作は一例であり、前述のプレビュー表示の指示と区別できれば、他の操作を採用してもよい。例えば、タップ、ダブルタップ(所定時間以内に二回のタップを行う操作)等の操作を採用してもよい。
ユーザからリサイズ画像の詳細情報を表示する指示を受け付けた場合(ステップS435)、スマートデバイス200は、ステップS436において、RequestContentDetailInfo APIをコールする。すなわち、プレビュー表示中の画像の詳細情報を取得するための要求をデジタルカメラ100に送信する。ここでは、プレビュー表示中の画像に対応する画像IDを引数に利用して、その画像IDで特定される画像の詳細情報をデジタルカメラ100に要求する。また、画像サイズの引数は「リサイズ」を示す値が利用される。
これに対し、ステップS437でデジタルカメラ100は、図3(a)に示すRequestContentDetailInfoに応じた処理を行い、リサイズ後の画像データの詳細情報をスマートデバイス200に対して返却する。なお、既にステップS434にてリサイズ画像の詳細情報を保持しているため、デジタルカメラ100は、再度リサイズ処理や、リサイズ画像の詳細情報の生成処理を実行することなく、詳細情報をスマートデバイス200に送信することができる。そして、スマートデバイス200は、デジタルカメラ100から受信したリサイズ後の画像の詳細情報をもとに、プレビュー表示中の画像の詳細情報を表示する。この結果、例えばスマートデバイス200の表示部206には、画面457のように、リサイズ後の画像のメタデータがプレビュー表示中の画像に重畳して表示される。
以上がケース3の説明である。
・ケース4:リサイズ画像の要求の前にリサイズ画像のメタデータを要求する場合
この場合、まず、ステップS441にてスマートデバイス200は、ユーザからいずれかのサムネイルに対応する画像の詳細情報を表示する指示を受け付ける。例えばユーザは、サムネイルの表示領域を一定時間以上タッチする(いわゆる長押し)ことで、サムネイルに対応する画像の詳細情報を表示させるための指示を入力することができる。なお、長押しの操作は一例であり、他の操作でもよい。例えば、サムネイルのタップ、ダブルタップ(所定時間以内に二回のタップを行う操作)、二本の指でのタップ等の操作を採用することができる。なお、この指示の入力に先立って、画像取り込みの際にはリサイズしたサイズで画像を取り込むことが設定済みであるとする。
ユーザからいずれかのサムネイルに対応する画像の詳細情報を表示する指示を受け付けたスマートデバイス200は、ステップS442において、RequestContentDetailInfo APIをコールする。すなわち、選択された画像のリサイズ後の詳細情報を取得するための要求をデジタルカメラ100に送信する。ここでは、ステップS441でユーザに選択されたサムネイルに対応する画像IDを引数に利用して、その画像IDで特定される画像をリサイズしたリサイズ画像の詳細情報をデジタルカメラ100に要求する。また、画像サイズの引数は「リサイズ」を示す値が利用される。
これに対し、ステップS443でデジタルカメラ100は、図3(a)に示すRequestContentDetailInfoに応じた処理を行い、リサイズ後の画像の詳細情報をスマートデバイス200に対して返却する。すなわち、要求に含まれる画像IDで特定される画像をリサイズし、その結果を解析して、リサイズ後の画像のメタデータを生成する。そして、生成したメタデータをスマートデバイス200に送信する。また、これに併せて、デジタルカメラ100では、ステップS444の処理を実行する。
ステップS444では、デジタルカメラ100は、ステップ443でリサイズした画像データを、作業用メモリ104に保持する。これにより、後にユーザがリサイズ画像を要求する場合に再度リサイズ処理を行う必要が無くなるため、スムーズに対応することができる。
一方、リサイズ画像の詳細情報を受信したスマートデバイス200は、デジタルカメラ100から受信した詳細情報をもとに、リサイズ画像の詳細情報を表示する。この結果、例えばスマートデバイス200の表示部206には、画面458のように、リサイズ画像のメタデータがサムネイル一覧に重畳して表示される。
なお、この状態で更に別のサムネイルに対応する画像のリサイズ後のメタデータを表示する指示を受け付けた場合には、ステップS442、ステップS443を繰り返し、そのサムネイルに対応するリサイズ画像の詳細情報を取得して表示する。これに伴い、既に表示されていた詳細情報は非表示となる。これは、複数の詳細情報が表示されていると、サムネイルが見にくくなってしまうからである。また、デジタルカメラ100は、別のサムネイルに対応するリサイズ画像の詳細情報が要求されたならば、ステップS444で保持していたリサイズ画像の詳細情報は破棄し、繰り返すステップS444にて、新たに詳細情報を要求されたリサイズ画像を保持する。
次に、ステップS445において、スマートデバイス200は、画面458に表示されるサムネイルのうちのいずれかの画像のプレビュー表示を行うための指示を受け付ける。例えばユーザは、表示されているサムネイルの内容や、ステップS441〜S443の処理により確認できるメタデータ等の情報をもとに、所望の一枚を選択し、より大きなサイズでの画像の内容の確認を指示することができる。この指示の入力には、例えばサムネイルのダブルタップの操作を採用することができる。この操作は、ステップS441での詳細情報を取得するための指示と区別することができれば、他の操作を採用してもよい。
さて、画像のプレビュー表示を行うための指示を受け付けたスマートデバイス200は、ステップS446にて、ステップS445で指示された画像の画像IDを引数に用いて、RequestContent APIをコールする。また、画像サイズの引数は「リサイズ」を示す値が利用される。
これに対し、ステップS447でデジタルカメラ100は、図3(a)に示すRequestContentに応じた処理を行い、画像データをスマートデバイス200に対して返却する。ここでは、既にステップS444でリサイズ後の画像データを保持しているため、再度リサイズ処理を行うことなくリサイズ画像をスマートデバイス200に送信することができる。
これを受け取ったスマートデバイス200は、デジタルカメラ100から受信した画像データをもとに、ディスプレイに選択された画像のプレビュー表示を行う。この結果、例えばスマートデバイス200の表示部206には、画面459のように一枚の画像が一画面に表示される。
以上が、ケース4の説明である。
以上のように、後に要求される可能性が高いと考えられる情報を、予め用意しておくことで、ユーザ指示に対するレスポンスを早めることができる。
<デジタルカメラ100の動作>
続いて、図4の手順を実現するための、デジタルカメラ100の動作について説明する。図5は本実施形態におけるデジタルカメラ100の動作を示すフローチャートである。このフローチャートにおける各処理は、制御部101が、不揮発性メモリ103に格納されたプログラムを作業用メモリ104に展開して実行することにより実現される。また、本フローチャートの処理は、例えばユーザのメニュー操作等によってスマートデバイス200との無線LANの通信を確立する指示を受け付けたことに応じて開始される。
まずステップS501にて、制御部101は通信部111を介して、スマートデバイス200との無線LAN通信を確立したか否かを判断する。無線LAN通信の確立とは、デジタルカメラ100に対して無線LANの通信を開始する指示が入力され、ネットワークの生成、ネットワーク内の機器検索を経て、スマートデバイス200との機器同士の通信を確立することを意味する。無線LAN通信を確立していないと判断された場合、本ステップの処理を繰り返し、無線LAN通信の確立を待つ。一方、無線LAN通信を確立したと判断された場合、処理はステップS502に進む。本ステップの処理は図4のステップS401、S402に相当する。
次に、ステップS502にて、制御部101は通信部111を介して、スマートデバイス200から、デジタルカメラ100の製品情報を取得するためのリクエストRequestProductInfoを受信したか否かを判断する。受信したと判断した場合、処理はステップS503に進む。受信していないと判断した場合、ステップS503を経ることなくステップS504に進む。
ステップS503では、制御部101は、要求の受信に応じて不揮発性メモリ103に記録されている製品名、製造者名、ファームウェアバージョン、シリアルナンバーなどを読み出し、レスポンスとしてスマートデバイス200に送信する。本ステップの処理は図4のステップS404に相当する。
次に、ステップS504にて、制御部101は通信部111を介して、スマートデバイス200からデジタルカメラ100の保存領域の情報を取得するためのリクエストRequestMemoryInfoを受信したか否かを判断する。受信したと判断した場合、処理はステップS505に進む。受信していないと判断した場合、ステップS505を経ることなくステップS506に進む。
ステップS505では、制御部101は、要求の受信に応じて、保存領域ID、保存可能容量、空き容量、保存済みコンテンツ数などをRequestMemoryInfoに対するレスポンスとしてスマートデバイス200に通信部111を介して送信する。本ステップの処理は図4のステップS406に相当する。
ステップS506では、制御部101は通信部111を介して、スマートデバイス200から、デジタルカメラ100に保存されている画像の管理情報を取得するためのリクエストRequestContentInfoを受信したか否かを判断する。受信したと判断した場合、処理はステップS507に進む。受信していないと判断した場合、処理はステップS509に進む。ステップS509については後述する。
ステップS507にて、制御部101は記録媒体110に保存されている管理情報のうち、指示された分の画像の管理情報をディレクトリエントリから読み出す。
次いでステップS508にて、制御部101は、ステップS507で読みだした管理情報をRequestContentInfoに対するレスポンスとして、通信部111を介してスマートデバイス200に送信する。本ステップの処理は図4のステップS408に相当する。
次に、ステップS509にて、制御部101は通信部111を介して、スマートデバイス200から画像のサムネイル取得要求を受信したか否かを判断する。具体的には、THUMBNAILを引数としたRequestContentを受信したか否かを判断する。受信したと判断した場合、処理はステップS510に進む。受信していないと判断した場合、処理はステップS512に進む。ステップS512については後述する。
ステップS510にて、制御部101は要求された画像のヘッダを解析し、サムネイルを読み出す。
次いで、ステップS511にて、制御部101は通信部111を介して、スマートデバイスにステップS512で読みだした画像のサムネイルをRequestContentに対するレスポンスとして送信する。本ステップの処理は図4のステップS410に相当する。
次に、ステップS512にて、制御部101は、通信部111を介して、スマートデバイス200からオリジナルサイズの画像の取得要求を受信したか否かを判断する。具体的には、「オリジナル」を示す値を引数としたRequestContentを受信したか否かを判断する。受信したと判断した場合、処理はステップS513に進む。受信していないと判断した場合、処理はステップS516に進む。ステップS516については後述する。
ステップS513にて、制御部101は要求に含まれる画像IDによって特定される画像データを読み出す。
次いで、ステップS514にて、制御部101は、ステップS513で読み出した画像の詳細情報を作業用メモリ104に保持する。このように、詳細情報を予め読み出しておくのは、画像が要求されたことで、詳細情報も要求される可能性が高まると考えられるからである。これにより、詳細情報が要求された場合のレスポンス速度を速める。ステップS513、ステップS514の処理は図4のステップS414に相当する。
次いでステップS515にて、制御部101は、ステップS513で読みだした画像データを、リサイズすることなく通信部111を介してスマートデバイス200に送信する。なお、ステップS515とステップS514の処理は前後してもよい。また、並行して実行されてもよい。本ステップの処理は図4のステップS413に相当する。
次に、ステップS516では、制御部101は、通信部111を介して、スマートデバイス200からリサイズした画像の取得要求を受信したか否かを判断する。具体的には、「リサイズ」を示す値を引数としたRequestContentを受信したか否かを判断する。受信したと判断した場合、処理はステップS517に進む。受信していないと判断した場合、処理はステップS520に進む。ステップS520については後述する。
ステップS517では、制御部101は作業用メモリ104に、既に要求されたリサイズ画像が保持されているか否かを判断する。保持されていないと判断した場合、処理はステップS518に進む。
ステップS518にて、制御部101は要求に含まれる画像IDによって特定される画像データを読み出し、リサイズ処理を実行する。例えば、画像データの画素を間引いて、データサイズを削減する。その後、ステップS519に進む。一方、ステップS517で、既に要求されたリサイズ画像が保持されていないと制御部101が判断した場合、ステップS518を経ることなくステップS519に進む。
次いで、ステップS519にて、制御部101は、リサイズ画像の詳細情報を作業用メモリ104に保持する。このように、詳細情報を予め保持しておくのは、画像が要求されたことで、詳細情報も要求される可能性が高まると考えられるからである。これにより、詳細情報が要求された場合のレスポンス速度を速める。ステップS518、ステップS519の処理は図4のステップS434に相当する。
次いでステップS520にて、制御部101は、ステップS518でリサイズした画像データを通信部111を介してスマートデバイス200に送信する。なお、ステップS519とステップS520の処理は前後してもよい。また、並行して実行されてもよい。本ステップの処理は図4のステップS437に相当する。
次に、ステップS521にて、制御部101は通信部111を介して、オリジナルサイズの画像の詳細情報の取得要求を受信したか否かを判断する。具体的には、「オリジナル」を示す値を引数としたRequestContentDetailInfoを受信したか否かを判断する。受信したと判断した場合、処理はステップS522に進む。受信していないと判断した場合、処理はステップS525に進む。ステップS525については後述する。
ステップS522にて、制御部101は作業用メモリ104に、スマートデバイス200から要求されたオリジナルサイズの画像のメタデータを保持しているか否かを判断する。保持していないと判断した場合、ステップS523にてオリジナルサイズの画像のヘッダを解析してメタデータを読み出す。保持している場合は、ステップS523を経ることなくステップS524に進む。
ステップS524では、制御部101は通信部111を介して、スマートデバイス200に要求されたオリジナルサイズの画像の詳細情報を、RequestContentDetailInfoに対するレスポンスとして送信する。本ステップの処理は図4のステップS417やステップS426に相当する。ここで、ステップS523を経ることなくステップS524が実行される場合は、既に保持済みの詳細情報を送信すればよい。この場合、ステップS523を実行する必要が無いため、ステップS523を実行する場合に比べて、要求の受け付けからのメタデータ送信までの時間を短縮することができる。
次に、ステップS525にて、制御部101は通信部111を介して、リサイズした画像の詳細情報の取得要求を受信したか否かを判断する。具体的には、「リサイズ」を示す値を引数としたRequestContentDetailInfoを受信したか否かを判断する。受信したと判断した場合、処理はステップS526に進む。受信していないと判断した場合、処理はステップS529に進む。ステップS529については後述する。
ステップS526にて、制御部101は作業用メモリ104に、スマートデバイス200から要求されたリサイズした画像のメタデータを保持しているか否かを判断する。保持していないと判断した場合、ステップS527にて画像をリサイズし、リサイズ後の画像のメタデータを生成し、ステップS528にてリサイズ画像を作業用メモリ104に保持した上でステップS529に進む。一方、保持していると判断した場合は、ステップS527とステップS528を経ることなくステップS529に進む。
ステップS529では、制御部101は通信部111を介して、スマートデバイス200に要求されたリサイズした画像の詳細情報を、RequestContentDetailInfoに対するレスポンスとして送信する。本ステップの処理は図4のステップS437やステップS443に相当する。ここで、ステップS527〜ステップS528を経ることなくステップS529が実行される場合は、既に保持済みの詳細情報を送信すればよい。この場合、ステップS527〜ステップS528を実行する必要が無いため、ステップS527〜ステップS528を実行する場合に比べて、要求の受け付けからのメタデータ送信までの時間を短縮することができる。
次に、ステップS530にて、制御部101はスマートデバイス200との無線LAN通信が切断されたか否かを判断する。なお、無線LAN通信が切断する場合としては、ユーザによって明示的に切断の指示を受け付けた場合や、スマートデバイス200からの信号が一定時間以上受信できない場合等が考えられる。ここで、無線LAN通信が切断していないと判断された場合、処理はステップS502に戻る。一方、無線LAN通信が切断したと判断された場合、ステップS531に進む。
ステップS531では、制御部201は作業用メモリ104に保持している詳細情報やリサイズ画像を削除する。その後、本フローチャートの処理を終了する。
以上が本実施形態におけるデジタルカメラ100の動作の説明である。
なお、上述の説明では、作業用メモリ104に保持している詳細情報やリサイズ画像を削除するタイミングを、接続切断時としたが、これに限らなくてもよい。例えば、画像取得要求後に、別の画像取得が要求された際に、作業用メモリ104に保持している詳細情報を消去してもよい。また、本実施の形態では、リサイズ画像の詳細情報を保持していない場合に、リサイズ画像の詳細情報を要求された際には、実際に画像をリサイズしてリサイズ画像の詳細情報を生成していたがこれに限らなくてもよい。リサイズ後の画像の詳細情報を予測して決定した値を、リサイズ画像の詳細情報としてスマートデバイス200に送信してもよい。
<スマートデバイス200の動作>
次に、図4の手順を実現するための、スマートデバイス200の動作について説明する。図6は本実施形態におけるスマートデバイス200の動作を示すフローチャートである。このフローチャートにおける各処理は、制御部201が、不揮発性メモリ203に格納されたプログラムを作業用メモリ204に展開して実行することにより実現される。また、本フローチャートの処理は、例えばユーザのメニュー操作等によってデジタルカメラ100との無線LANの通信を確立する指示を受け付けたことに応じて開始される。
まずステップS601にて、制御部201は通信部211を介して、デジタルカメラ100との無線LAN通信を確立したか否かを判断する。無線LAN通信の確立とは、無線LANの通信を開始する指示が入力され、デジタルカメラ100が生成しているネットワークへの参加、ネットワーク内の機器検索を経て、デジタルカメラ100との機器同士の通信を確立することを意味する。無線LAN通信を確立していないと判断された場合、本ステップの処理を繰り返し、無線LAN通信の確立を待つ。一方、無線LAN通信を確立したと判断された場合、処理はステップS602に進む。本ステップの処理は図4のステップS401、S402に相当する。
次に、ステップS602にて、制御部201は通信部211を介して、デジタルカメラ100の製品情報を取得するためのリクエストRequestProductInfoをデジタルカメラ100に送信する。ここで送信した情報は、デジタルカメラ100における図5のステップS502の処理によって受信される。本ステップの処理は図4のステップS403に相当する。
ステップS603では、制御部201は、ステップS602で送信した要求に対する応答を受信したか否かを判断する。受信していないと判断した場合は、本ステップの処理を繰り返して受信を待つ。受信したと判断した場合、処理はステップS604に進む。なお、受信される情報は、デジタルカメラ100の製品名、製造者名、ファームウェアバージョン、シリアルナンバーなどを含む。これらの情報は、表示部206に表示することでユーザに製品名等の情報の提示や、製品の特性を判断するために用いられる。
ステップS604にて、制御部201は通信部211を介して、デジタルカメラ100に保存領域の情報を取得するための要求を送信する。具体的には、RequestMemoryInfoを送信する。ここで送信した情報は、デジタルカメラ100における図5のステップS504の処理によって受信される。本ステップの処理は図4のステップS405に相当する。
ステップS605では、制御部201は、ステップS604で送信した要求に対する応答を受信したか否かを判断する。受信していないと判断した場合は、本ステップの処理を繰り返して受信を待つ。受信したと判断した場合、処理はステップS606に進む。なお、受信される情報は、保存領域ID、保存可能容量、空き容量、保存済みコンテンツ数などを含む。これらの情報により、スマートデバイス200はデジタルカメラ100の記録媒体110に保存されているコンテンツの数や、ストレージにアクセスするための保存領域のIDを認識することができる。そして、コンテンツの数を認識することで、表示部206の表示領域をどの程度確保する必要があるかなど判断することができる。
次に、ステップS606にて、制御部201は操作部205を介して、ユーザからサムネイル一覧を表示する指示を受け付けたか否かを判断する。受け付けたと判断した場合は、処理はステップS607に進む。受け付けていないと判断した場合は、処理はステップS613に進む。ステップS613については後述する。
ステップS607では、制御部201は通信部211を介して、デジタルカメラ100に表示部206に表示可能な数の管理情報取得要求を行う。具体的には、RequestContentInfoをデジタルカメラ100に送信する。ここで、RequestContentInfoの引数には、ステップS605にて取得した保存領域のIDを指定する。本ステップの処理は図4のステップS407に相当する。
次いで、ステップS608にて、制御部201は通信部211を介して、デジタルカメラ100からの管理情報の取得が完了したか否かを判断する。完了していないと判断した場合、本ステップの処理を繰り返して完了を待つ。完了したと判断した場合、処理はステップS609に進む。ここで、管理情報として取得する情報は、コンテンツIDを含む。このコンテンツIDは、デジタルカメラ100に対して、本画像や詳細情報を要求する際に、画像を特定するための情報である。
ステップS609にて、制御部201は通信部211を介して、デジタルカメラ100に画像のサムネイル取得要求を行う。具体的には、画像サイズの引数にTHUMBNAILを用いたRequestContentをデジタルカメラ100に送信する。本ステップの処理は図4のステップS409に相当する。
ステップS610にて、制御部201は通信部211を介して、ステップS609で要求したサムネイルの取得が完了したか否かを判断する。完了していないと判断した場合、本ステップの処理を繰り返して完了を待つ。完了したと判断した場合、処理はステップS611に進む。
ステップS611にて、制御部201は表示部206に画像のサムネイルを表示する。
次いで、ステップS612にて、制御部201は表示部206の表示範囲の画像のサムネイルと詳細情報を全て取得し終えたか否かを判断する。例えば表示範囲に15つのサムネイルが表示される場合、サムネイルと詳細情報をそれぞれ15ずつ取得したか否かが判断される。取得し終えていないと判断された場合、処理はステップS609に戻り、残りのサムネイルと詳細情報を取得および表示すべく、ステップS609〜ステップS612を繰り返す。これにより、サムネイルを一つ取得および表示する度に、そのサムネイルに対応する画像の詳細情報が取得および表示される。結果として、サムネイルと詳細情報が交互に表示されながら、最終的に画面451のようなサムネイルの一覧画面が表示される。
次に、ステップS613にて、制御部201は、操作部205を介してユーザから画像のプレビュー表示の指示を受け付けされたか否かを判断する。例えば制御部201は、サムネイルの表示領域に対応するタッチパネルの位置に二本指でタッチされたことを検出した場合に、そのサムネイルに対応する画像のプレビュー表示の指示を受け付けたと判断する。指示を受け付けたと判断した場合、処理はステップS614に進む。指示を受け付けていないと判断した場合、処理はステップS621に進む。ステップS621については後述する。
ステップS614では、制御部201は、取得する画像サイズを決定する。具体的には、制御部201は、予めメニュー操作によって設定されている画像サイズの設定値を読み出し、オリジナルサイズの画像を取得する設定であるか、リサイズした画像を取得する設定であるかを判断する。オリジナルサイズの画像を取得する設定であると判断した場合、処理はステップS615に進む。
ステップS615では、制御部201は通信部211を介して、デジタルカメラ100に画像データ取得要求を行う。具体的には、画像サイズの引数に「オリジナル」を用いてRequestContentをデジタルカメラ100に送信する。本ステップの処理は例えば図4のステップS411やステップS425に相当する。
次いでステップS616にて、制御部201は通信部211を介して、ステップS617で要求した画像データの取得が完了したか否かを判断する。完了していないと判断した場合、本ステップの処理を繰り返して完了を待つ。完了したと判断した場合、処理はステップS617に進む。
ステップS617にて、制御部201は表示部206の一画面にオリジナルサイズの画像データを表示する。この結果、例えば図4の画面452のように画像が一画面にプレビュー表示される。その後、処理はステップS629に進む。ステップS629については後述する。
一方、ステップS614にて制御部201が、リサイズ画像を取得する設定であると判断した場合、処理はステップS618に進む。
ステップS618では、制御部201は通信部211を介して、デジタルカメラ100に画像データ取得要求を行う。具体的には、画像サイズの引数に「リサイズ」を用いてRequestContentをデジタルカメラ100に送信する。本ステップの処理は例えば図4のステップS433やステップS446に相当する。
次いでステップS619にて、制御部201は通信部211を介して、ステップS617で要求した画像データの取得が完了したか否かを判断する。完了していないと判断した場合、本ステップの処理を繰り返して完了を待つ。完了したと判断した場合、処理はステップS617に進む。
ステップS620にて、制御部201は表示部206の一画面にリサイズ画像を表示する。この結果、例えば図4の画面456のように画像が一画面にプレビュー表示される。その後、処理はステップS629に進む。ステップS629については後述する。
次に、ステップS613でプレビュー表示の指示を受け付けていないと判断されて進むステップS621以降の処理について説明する。
ステップS621では、制御部201は、操作部205を介してユーザから画像の詳細情報を表示する指示を受け付けたか否かを判断する。例えば制御部201は、サムネイルの表示領域に対応するタッチパネルの位置に一定時間タッチされ続けた場合に、そのサムネイルに対応する画像の詳細情報の表示指示を受け付けたと判断する。指示を受け付けたと判断した場合、処理はステップS622に進む。指示を受け付けていないと判断した場合、処理はステップS629に進む。ステップS629については後述する。
ステップS622では、制御部201は、オリジナルサイズの画像の詳細情報を取得するか、リサイズ画像の詳細情報を取得するかを判断する。具体的には、予めメニュー操作によって設定されている取得画像サイズの設定値を読み出し、オリジナルサイズの画像を取得する設定であるか、リサイズした画像を取得する設定であるかを判断する。オリジナルサイズの画像を取得する設定であると判断した場合、処理はステップS623に進む。
ステップS623にて、制御部201は通信部211を介して、デジタルカメラ100に画像の詳細情報取得要求を行う。具体的には、ステップS621で指示を受け付けたサムネイルに対応する画像IDを引数に用いたRequestContentDetailInfoを送信する。また、画像サイズの引数には「オリジナル」を示す値が用いられる。本ステップの処理は例えば図4のステップS412やステップS425に相当する。
次に、ステップS624にて、制御部201は通信部211を介して、デジタルカメラ100から詳細情報の取得が完了したか否かを判断する。完了していないと判断した場合、本ステップの処理を繰り返して完了を待つ。完了したと判断した場合、処理はステップS625に進む。
ステップS625では、制御部201は、ステップS624で受信したオリジナルサイズの画像の詳細情報を表示部206に表示する。この結果、例えば図4の画面453のようにプレビュー表示されているオリジナルサイズの画像に重畳して、オリジナルサイズの画像の詳細情報が表示される。その後、処理はステップS629に進む。ステップS629については後述する。
一方、ステップS622にて制御部201が、リサイズ画像を取得する設定であると判断した場合、処理はステップS626に進む。
ステップS626にて、制御部201は通信部211を介して、デジタルカメラ100に画像の詳細情報取得要求を行う。具体的には、ステップS621で指示を受け付けたサムネイルに対応する画像IDを引数に用いたRequestContentDetailInfoを送信する。また、画像サイズの引数には「リサイズ」を示す値が用いられる。本ステップの処理は例えば図4のステップS436やステップS442に相当する。
次に、ステップS627にて、制御部201は通信部211を介して、デジタルカメラ100から詳細情報の取得が完了したか否かを判断する。完了していないと判断した場合、本ステップの処理を繰り返して完了を待つ。完了したと判断した場合、処理はステップS628に進む。
ステップS628では、制御部201は、ステップS624で受信したリサイズ画像の詳細情報を表示部206に表示する。この結果、例えば図4の画面457のようにプレビュー表示されているリサイズ画像に重畳して、リサイズ画像の詳細情報が表示される。その後、処理はステップS629に進む。
ステップS629で制御部101は、デジタルカメラ100との無線LAN通信が切断されたか否かを判断する。なお、無線LAN通信が切断する場合としては、ユーザによって明示的に切断の指示を受け付けた場合や、デジタルカメラ100からの信号が一定時間以上受信できない場合等が考えられる。ここで、無線LAN通信が切断していないと判断された場合、処理はステップS606に戻る。一方、無線LAN通信が切断したと判断された場合、本フローチャートの処理を終了する。
以上が本実施形態におけるスマートデバイス200の動作の説明である。
以上、本実施形態においては、画像のリサイズや、リサイズ後の画像のメタデータの生成を、後に要求される可能性の高い要求を受け付けた時点で、予め実行しておく。これにより、ユーザの指示に対する応答を早めることができる。
[その他の実施形態]
上述の実施形態に加えて、画像のリサイズ中(例えば図5のステップS518やステップS527の実行中)に、新たに次の指示を受け付けるようにしてもよい。この場合、例えばリサイズ中の画像とは別のリサイズ画像の要求を受け付けることが考えられる。もし別のリサイズ画像の要求を受け付けたならば、その時点でリサイズ中の画像のリサイズ処理を中止し、新たに要求された別のリサイズ画像のためのリサイズ処理を実行する。これにより、スマートデバイス200の操作に対して、よりスムーズに対応することができる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。

Claims (6)

  1. 外部装置と通信することができる通信装置であって、
    画像を記録媒体から読み出して保持する保持手段と、
    前記記録媒体に記録されている画像をリサイズしてリサイズ画像を生成するリサイズ手段と、
    前記リサイズ画像の要求および前記リサイズ画像のメタデータの要求を前記外部装置から受け付ける受け付け手段とを有し、
    前記受け付け手段によりリサイズ画像の要求を受け付けた場合、前記保持手段は、前記要求を受け付けたリサイズ画像のメタデータを保持し、
    前記受け付け手段により、リサイズ画像のメタデータの要求を受け付けた場合、前記保持手段は、前記メタデータの要求を受け付けたリサイズ画像を保持することを特徴とする通信装置。
  2. 前記外部装置との通信が切断された場合、前記保持手段が保持するリサイズ画像およびリサイズ画像のメタデータを削除する削除手段を更に有することを特徴とする請求項1に記載の通信装置。
  3. 前記受け付け手段は更に、前記画像の要求および前記画像のメタデータの要求を前記外部装置から受け付けることを特徴とする請求項1に記載の通信装置。
  4. 撮像手段を更に有し、
    前記画像は前記撮像手段による撮像で得られる画像であることを特徴とする請求項1に記載の通信装置。
  5. 外部装置と通信することができる通信装置の制御方法であって、
    画像を記録媒体から読み出して保持する保持工程と、
    前記記録媒体に記録されている画像をリサイズしてリサイズ画像を生成するリサイズ工程と、
    前記リサイズ画像の要求および前記リサイズ画像のメタデータの要求を前記外部装置から受け付ける受け付け工程とを有し、
    前記受け付け工程でリサイズ画像の要求を受け付けた場合、前記保持工程では、前記要求を受け付けたリサイズ画像のメタデータを保持し、
    前記受け付け工程でリサイズ画像のメタデータの要求を受け付けた場合、前記保持工程では、前記メタデータの要求を受け付けたリサイズ画像を保持することを特徴とする通信装置の制御方法。
  6. コンピュータを、請求項1乃至4のいずれか1項に記載の通信装置の各手段として機能させるための、コンピュータが読み取り可能なプログラム。
JP2014179323A 2014-09-03 2014-09-03 通信装置、通信装置の制御方法、プログラム Active JP6395522B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014179323A JP6395522B2 (ja) 2014-09-03 2014-09-03 通信装置、通信装置の制御方法、プログラム
US14/841,364 US10235963B2 (en) 2014-09-03 2015-08-31 Communication apparatus communicable with external apparatus, control method of communication apparatus, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014179323A JP6395522B2 (ja) 2014-09-03 2014-09-03 通信装置、通信装置の制御方法、プログラム

Publications (3)

Publication Number Publication Date
JP2016054389A true JP2016054389A (ja) 2016-04-14
JP2016054389A5 JP2016054389A5 (ja) 2017-10-19
JP6395522B2 JP6395522B2 (ja) 2018-09-26

Family

ID=55404067

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014179323A Active JP6395522B2 (ja) 2014-09-03 2014-09-03 通信装置、通信装置の制御方法、プログラム

Country Status (2)

Country Link
US (1) US10235963B2 (ja)
JP (1) JP6395522B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10009505B2 (en) * 2015-04-14 2018-06-26 Apple Inc. Asynchronously requesting information from a camera device
JP6467395B2 (ja) * 2016-11-25 2019-02-13 キヤノン株式会社 画像送信装置、画像受信装置、それらの制御方法および画像通信システム
US20200012423A1 (en) * 2017-03-09 2020-01-09 Google Llc Presentation hierarchy in a notification user interface
US10430924B2 (en) * 2017-06-30 2019-10-01 Quirklogic, Inc. Resizable, open editable thumbnails in a computing device
JP7028698B2 (ja) * 2018-04-13 2022-03-02 シャープ株式会社 電子機器、制御装置、制御方法、および制御プログラム
US11061744B2 (en) * 2018-06-01 2021-07-13 Apple Inc. Direct input from a remote device
KR20200111989A (ko) * 2019-03-20 2020-10-05 삼성전자주식회사 외부 장치에 저장된 파일 정보를 검색하는 전자 장치 및 그의 동작 방법

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001045452A (ja) * 1999-07-30 2001-02-16 Fuji Photo Film Co Ltd 画像通信システムならびにそのシステムを構成する画像処理装置および方法
JP2001306376A (ja) * 2000-04-26 2001-11-02 Nikon Corp データファイル管理用記録媒体、データファイル管理装置、画像データの伝送方法およびデータの伝送方法
JP2003204500A (ja) * 2002-01-08 2003-07-18 Fuji Photo Film Co Ltd 画像送信方法及び装置
JP2004343627A (ja) * 2003-05-19 2004-12-02 Canon Inc デジタルカメラ
JP2005190155A (ja) * 2003-12-25 2005-07-14 Canon Inc 情報入力装置、情報入力方法、制御プログラム及び記憶媒体
JP2007081892A (ja) * 2005-09-14 2007-03-29 Ricoh Co Ltd 画像データ管理システム
WO2008149925A1 (ja) * 2007-06-08 2008-12-11 Nikon Corporation 撮像装置、画像表示装置、プログラム
US20090070401A1 (en) * 2007-09-10 2009-03-12 Welch Jr Charles D Configurable distributed information sharing system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7511842B2 (en) * 2002-03-19 2009-03-31 Ricoh Company, Ltd. Image forming apparatus
US7725431B2 (en) * 2006-06-30 2010-05-25 Nokia Corporation Method and apparatus for the synchronization and storage of metadata
JP4760892B2 (ja) * 2008-10-10 2011-08-31 ソニー株式会社 表示制御装置、表示制御方法及びプログラム
KR101305510B1 (ko) * 2008-10-23 2013-09-05 삼성전자주식회사 메타데이터를 이용한 문서의 로그정보 전송방법, 이를 적용한 호스트장치, 화상형성장치 및 화상형성시스템
JP5488056B2 (ja) * 2010-03-03 2014-05-14 ソニー株式会社 画像処理装置、画像処理方法およびプログラム
KR20130050788A (ko) * 2011-11-08 2013-05-16 삼성전자주식회사 Ban 환경에서의 프록시 통신 시스템 및 그 제어 방법
JP5882768B2 (ja) * 2012-02-03 2016-03-09 キヤノン株式会社 画像処理装置、その制御方法、プログラム
KR101905648B1 (ko) * 2012-02-27 2018-10-11 삼성전자 주식회사 카메라 장치의 동영상 촬영방법 및 장치
US9049369B2 (en) * 2013-07-10 2015-06-02 Christie Digital Systems Usa, Inc. Apparatus, system and method for projecting images onto predefined portions of objects

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001045452A (ja) * 1999-07-30 2001-02-16 Fuji Photo Film Co Ltd 画像通信システムならびにそのシステムを構成する画像処理装置および方法
JP2001306376A (ja) * 2000-04-26 2001-11-02 Nikon Corp データファイル管理用記録媒体、データファイル管理装置、画像データの伝送方法およびデータの伝送方法
JP2003204500A (ja) * 2002-01-08 2003-07-18 Fuji Photo Film Co Ltd 画像送信方法及び装置
JP2004343627A (ja) * 2003-05-19 2004-12-02 Canon Inc デジタルカメラ
JP2005190155A (ja) * 2003-12-25 2005-07-14 Canon Inc 情報入力装置、情報入力方法、制御プログラム及び記憶媒体
JP2007081892A (ja) * 2005-09-14 2007-03-29 Ricoh Co Ltd 画像データ管理システム
WO2008149925A1 (ja) * 2007-06-08 2008-12-11 Nikon Corporation 撮像装置、画像表示装置、プログラム
US20090070401A1 (en) * 2007-09-10 2009-03-12 Welch Jr Charles D Configurable distributed information sharing system

Also Published As

Publication number Publication date
JP6395522B2 (ja) 2018-09-26
US10235963B2 (en) 2019-03-19
US20160065887A1 (en) 2016-03-03

Similar Documents

Publication Publication Date Title
JP6429539B2 (ja) 通信装置、通信装置の制御方法、プログラム
JP6395522B2 (ja) 通信装置、通信装置の制御方法、プログラム
RU2451420C1 (ru) Устройство приема данных, устройство передачи данных, способ для управления ими и программа
JP6603513B2 (ja) 通信装置及び情報処理装置及びそれらの制御方法、並びに記憶媒体
JP2016053840A (ja) 電子機器およびその制御方法
JP6433265B2 (ja) 情報処理装置、電子機器およびそれらの制御方法、プログラム並びに記憶媒体
JP6391374B2 (ja) 通信装置、通信装置の制御方法、プログラム
JP6467395B2 (ja) 画像送信装置、画像受信装置、それらの制御方法および画像通信システム
JP2019036789A (ja) 撮像装置、通信装置およびそれらの制御方法、並びにプログラム
JP2016042655A (ja) 通信装置、通信装置の制御方法、プログラム
US10728451B2 (en) Communication device for communicating with external device, method for controlling the same, and recording medium
JP7218164B2 (ja) 通信装置およびその制御方法
KR20200070107A (ko) 외부 장치와 통신할 수 있는 통신장치, 통신장치의 제어방법, 및 기록매체
JP6478615B2 (ja) 通信装置、その制御方法およびプログラム
JP6869656B2 (ja) 送信装置、受信装置、及び、通信システム
JP7346122B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
WO2016035293A1 (en) Communication apparatus, information processing apparatus, methods and computer-readable storage medium
JP2019003495A (ja) 情報処理装置、その制御方法、および制御プログラム
JP7086743B2 (ja) 通信装置、通信装置の制御方法、プログラム
JP6956515B2 (ja) 通信システム、並びに、通信装置及びその制御方法及びプログラム
JP6632375B2 (ja) 通信装置、その制御方法、および制御プログラム
JP2016010044A (ja) 撮像装置、撮像装置の制御方法、プログラム、及び記憶媒体
JP6132676B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラム
JP2019067133A (ja) 情報処理装置、情報処理装置の制御方法、プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170901

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170901

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180717

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: 20180731

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180828

R151 Written notification of patent or utility model registration

Ref document number: 6395522

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151