Electronic device with communication function, control method and program thereof
By pre-generating an image list cache during communication setup, the electronic device addresses the delay in list creation, enabling rapid response to external device requests.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2022-03-18
- Publication Date
- 2026-05-12
AI Technical Summary
Existing technologies take time to generate a list of images held by an electronic device when transmitting it to an information processing device due to the server device starting the list creation in response to a request, leading to delayed initial response times.
The electronic device generates a cache of the image list before receiving a request from an external device, allowing for immediate transmission upon receipt of the request.
This approach enables rapid response to requests from external devices by pre-generating the image list cache during communication setup, reducing initial delay in list generation.
Smart Images

Figure 0007857127000001 
Figure 0007857127000002 
Figure 0007857127000003
Abstract
Description
Technical Field
[0001] The present invention relates to an electronic device having a communication function, a control method thereof, and a program.
Background Art
[0002] In recent years, a technique is known in which data such as images held by an electronic device such as a digital camera is transmitted to an information processing device such as a smart device via communication such as a wireless LAN (Local Area Network) and displayed on the information processing device side. In order to display a list of images held by the electronic device on the information processing device side, a data list may be transmitted from the electronic device to the information processing device. However, when the electronic device holds a large number of images, it may take time to generate the list.
[0003] In Patent Document 1, when the list to be transmitted to an external device spans multiple pages, a technique is proposed in which the server device transmits the list of the target page requested from the external device and pre-reads pages other than the target page to generate a list.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] In the technique proposed in Patent Document 1, the server device starts creating a list in response to receiving a list creation request. For this reason, there is a problem that it takes time to create the list initially requested from the external device (that is, the list of the target page).
[0006] This invention has been made in view of the above problems, and its objective is to realize a technology that can provide a rapid response to requests from external devices regarding information provided by electronic devices. [Means for solving the problem]
[0007] To solve this problem, for example, the electronic device of the present invention has the following configuration: an electronic device comprising: communication means for communicating with an external device; generation means for generating an image list showing images to be provided to the external device; and control means for controlling the transmission of the image list to the external device when a request to acquire the image list is received from the external device, wherein the control means starts generating a cache of the image list after a predetermined operation relating to the establishment of communication with the external device and before receiving a request to acquire the image list from the external device, and transmits the image list based on the cache to the external device in response to the receipt of the request to acquire the image list. The control means then starts generating a cache of the image list in accordance with the predetermined operation relating to establishing communication used to provide images to the external device. It is characterized by doing so. [Effects of the Invention]
[0008] According to the present invention, it becomes possible to provide a rapid response to requests from external devices regarding information provided by electronic devices. [Brief explanation of the drawing]
[0009] [Figure 1] Block diagram showing the configuration of a digital camera as an example of an electronic device in an embodiment of the present invention. [Figure 2] Block diagram showing an example configuration of a smart device as an example of an information processing device in an embodiment. [Figure 3] Sequence diagram showing an example of processing between a digital camera and a smart device in this embodiment. [Figure 4] A diagram showing an example of a user interface displayed on a smart device in an embodiment. [Figure 5] A flowchart illustrating the series of operations for image provisioning processing of a digital camera in the embodiment. [Figure 6] A flowchart illustrating the series of operations for image acquisition processing of a smart device in an embodiment. [Modes for carrying out the invention]
[0010] The embodiments will be described in detail below with reference to the attached drawings. Note that the following embodiments do not limit the invention as defined in the claims. While the embodiments describe multiple features, not all of these features are essential to the invention, and the features may be combined in any way. Furthermore, in the attached drawings, identical or similar configurations are given the same reference numerals, and redundant descriptions are omitted.
[0011] <Digital Camera Configuration> Referring to Figure 1, an example configuration of a digital camera 100 as an example of an electronic device in this embodiment will be described. In this embodiment, the electronic device is described as a digital camera, but the electronic device is not limited to a digital camera. For example, the electronic device may be a portable media player, a so-called tablet device, a smartphone, a personal computer, a smart speaker, or other electronic device. Furthermore, in the following description, the case in which a smart device is used as an example of an information processing device will be described. A smart device includes portable terminals such as smartphones and tablet devices. Note that the information processing device is not limited to a smart device, and for example, the information processing device may be a digital camera, printer, television, or personal computer with wireless communication capabilities.
[0012] The control unit 101 includes one or more processors, such as a CPU, and controls various parts of the digital camera 100 by executing the program described later. Alternatively, instead of the control unit 101 controlling the entire device, multiple hardware components may share the processing to control the entire device.
[0013] The imaging unit 102 consists of, for example, an optical lens unit, an optical system that controls aperture, zoom, and focus, and an image sensor that converts the light (image) introduced through the optical lens unit into an electrical image signal. Generally, CMOS (Complementary Metal Oxide Semiconductor) or CCD (Charge Coupled Device) are used as the image sensor. The imaging unit 102 is controlled by the control unit 101 to convert the subject light formed by the lens included in the imaging unit 102 into an electrical signal using the image sensor, perform noise reduction processing, and output the digital data as image data. In the digital camera 100 of this embodiment, the image data is encoded by the control unit 101 and recorded as a file on the recording medium 110 according to the DCF (Design Rule for Camera File system) standard.
[0014] The non-volatile memory 103 includes electrically erasable and recordable non-volatile memory and stores programs, etc., that are executed by the control unit 101, as described later. The working memory 104 includes volatile memory and is used as a buffer memory for temporarily holding image data captured by the imaging unit 102, as well as as image display memory for the display unit 106, and as a working area for the control unit 101. The working memory 104 may also hold a cache of the image list, as described later.
[0015] The control unit 105 receives instructions from the user for the digital camera 100. The control unit 105 includes, for example, a power button for the user to turn the digital camera 100 on or off, and a release switch for instructing the user to take a picture. The release switch has SW1 and SW2 to detect the pressed state in two stages. When the release switch is in a so-called half-press state, SW1 turns ON. This allows the control unit to receive instructions for preparing for shooting, such as AF (autofocus) processing, AE (automatic exposure) processing, AWB (auto white balance) processing, and EF (flash pre-flash) processing. When the release switch is in a so-called fully pressed state, SW2 turns ON. This allows the control unit to receive instructions to take a picture.
[0016] The recording medium 110 can record image data files output from the imaging unit 102. The recording medium 110 may be configured to be detachable from the digital camera 100, or it may be built into the digital camera 100. In other words, the digital camera 100 only needs to have means to access the recording medium 110.
[0017] The communication unit 111 is an interface for communicating with an external device. In this embodiment, the digital camera 100 can exchange data such as images with an external device, such as a smart device 200 (described later), via the communication unit 111. For example, image data generated by the imaging unit 102 can be transmitted to an external device via the communication unit 111. In this embodiment, the communication unit 111 includes an interface for communicating with an external device using a so-called wireless LAN in accordance with the IEEE 802.11 standard. The control unit 101 enables wireless communication with the external device by controlling the communication unit 111.
[0018] The short-range communication unit 112 is composed of, for example, an antenna for wireless communication, a modulation / demodulation circuit for processing wireless signals, and a communication controller. The short-range communication unit 112 outputs a modulated wireless signal from the antenna and demodulates the wireless signal received by the antenna to realize short-range wireless communication in accordance with the IEEE802.15 standard (so-called Bluetooth (registered trademark)). The Bluetooth (registered trademark) communication in this embodiment can use, for example, version 4.0 of Bluetooth (registered trademark) Low Energy (hereinafter, BLE), which has low power consumption. This Bluetooth (registered trademark) communication has a narrower communication range (that is, a shorter communication distance) compared to wireless LAN communication. Also, Bluetooth (registered trademark) communication has a slower communication speed compared to wireless LAN communication. On the other hand, Bluetooth (registered trademark) communication consumes less power compared to wireless LAN communication. The digital camera 100 of this embodiment can exchange data with an external device via the short-range communication unit 112. For example, when receiving a shooting instruction from an external device, it controls the imaging unit 102 to perform a shooting operation, and when receiving an instruction for data transfer by wireless LAN communication, it controls the communication unit 111 to start wireless LAN communication.
[0019] The communication unit 111 of the digital camera 100 in this embodiment has an AP mode that operates as an access point in the infrastructure mode and a CL mode that operates as a client in the infrastructure mode. By operating the communication unit 111 in the CL mode, the digital camera 100 can operate as a CL device in the infrastructure mode. When the digital camera 100 operates as a CL device, it can participate in the network formed by the AP device by connecting to the surrounding AP device. Also, by operating the communication unit 111 in the AP mode, the digital camera 100 can operate as a simple AP (hereinafter referred to as a simple AP) that is a kind of AP but has more limited functions. When the digital camera 100 operates as a simple AP, the digital camera 100 forms a network by itself. Devices around the digital camera 100 can recognize the digital camera 100 as an AP device and participate in the network formed by the digital camera 100. The AP mode and the CL mode can be selected by the user operating the operation unit 105.
[0020] Note that although the digital camera 100 in this embodiment is a kind of AP, it may be a simple AP that does not have a gateway function to transfer data received from a CL device to an Internet provider or the like. In this case, even if data is received from another device participating in the network formed by the device itself, it cannot be transferred to a network such as the Internet.
[0021] <Configuration of Smart Device> Next, referring to FIG. 2, a configuration example of a smart device 200 as an example of the information processing device of this embodiment will be described.
[0022] The control unit 201 includes one or more processors, such as a CPU, and controls various parts of the smart device 200 by executing the program described later. Alternatively, instead of the control unit 201 controlling the entire device, multiple hardware components may share the processing to control the entire device.
[0023] The imaging unit 202 includes an optical system such as a lens and an image sensor. The lens included in the imaging unit 202 converts the subject light formed by the image into an electrical signal, performs noise reduction processing, and outputs the digital data as image data. The captured image data is stored in a buffer memory, then subjected to predetermined calculations and encoding processes by the control unit 201, and recorded as a file on the recording medium 210.
[0024] The non-volatile memory 203 is an electrically erasable and recordable non-volatile memory. For example, the non-volatile memory 203 stores the operating system (OS), which is the basic software executed by the control unit 201, and applications that work in conjunction with the OS to realize advanced functions. In this embodiment, the non-volatile memory 203 also stores, for example, an application (hereinafter referred to as "app") for communicating with the digital camera 100.
[0025] The working memory 204 is used as the image display memory for the display unit 206 and as the work area for the control unit 201. The operation unit 205 is used to receive instructions from the user for the smart device 200. The operation unit 205 includes, for example, a power button for the user to instruct the smart device 200 to turn the power ON / OFF, and an operation component such as a touch panel formed on the display unit 206. The display unit 206 displays image data, displays text for interactive operation, etc. Note that the display unit 206 does not necessarily have to be provided by the smart device 200. The smart device 200 can be connected to the display unit 206 and only needs to have a display control function to control the display of the display unit 206. Note that the user interface of the smart device 200 may be realized by the operation unit 205 and the display unit 206.
[0026] The recording medium 210 can record image data output from the imaging unit 202. The recording medium 210 may be configured to be detachable from the smart device 200, or it may be built into the smart device 200. In other words, the smart device 200 only needs to have means to access the recording medium 210.
[0027] The communication unit 211 is an interface for connecting to an external device. In this embodiment, the smart device 200 can exchange data with the digital camera 100 via the communication unit 211. In this embodiment, the communication unit 211 is an antenna, and the control unit 101 can connect to the digital camera 100 via the antenna. The connection to the digital camera 100 may be direct or via an access point. For example, HTTP (Hyper Text Transfer Protocol) can be used as the protocol for communicating data. In addition, PTP / IP (Picture Transfer Protocol over Internet Protocol) can be used via a wireless LAN. Note that communication with the digital camera 100 is not limited to these. For example, the communication unit 211 may include a wireless communication module such as an infrared communication module, a Bluetooth® communication module, or a WirelessUSB. Furthermore, wired connections such as USB cables, HDMI®, IEEE1394, or Ethernet may be used.
[0028] The short-range communication unit 212 is a communication unit for realizing short-range wireless communication. The short-range communication unit 212 may include an antenna for wireless communication and a modulation / demodulation circuit and communication controller for processing wireless signals. The short-range communication unit 212 realizes short-range wireless communication by outputting a modulated wireless signal from the antenna and demodulating the wireless signal received by the antenna. Here, short-range wireless communication in accordance with the IEEE 802.15 standard (so-called Bluetooth®) is realized. Note that the non-contact proximity communication realized by the short-range communication unit 112 is not limited to Bluetooth®, and other wireless communication methods may be used.
[0029] The public network communication unit 213 is an interface used when performing public wireless communication. The smart device 200 can communicate with other devices via the public network communication unit 213. In this case, the control unit 201 enables communication by inputting and outputting voice signals via the microphone 214 and speaker 215. In this embodiment, the public network communication unit 213 may include an antenna, and the control unit 101 can connect to the public network via the antenna. It is also possible for the communication unit 211 and the public network communication unit 213 to share a single antenna.
[0030] <Example of a sequence for transmitting images between devices> When displaying images held by the digital camera 100 on the smart device 200, the digital camera 100 first sends a list of image file paths to the smart device 200 instead of sending the image data itself. Then, when the smart device 200 accepts access to a file path, it sends the corresponding image. In such cases, if the digital camera 100 holds a large number of images, generating the list of file paths may take time. To solve this problem, in this embodiment, the digital camera 100 improves the response speed when sending the list of image file paths by creating a cache of the image file path list in advance.
[0031] The following describes an example of a sequence for transmitting images between the digital camera 100 and the smart device 200 in an embodiment, with reference to Figures 3 and 4. Figure 4 shows an example of a user interface (UI) displayed on the smart device 200 in an embodiment. Figure 4(a) shows the UI before the digital camera 100 and the smart device 200 are connected via a wireless LAN network. Figure 4(b) shows the UI after the digital camera 100 and the smart device 200 are connected via a wireless LAN network. For the sake of simplicity, in this explanation, the digital camera 100 and the smart device 200 are described as the entities that execute the processes. However, each process can be realized by the control unit 101 of the digital camera 100 and the control unit 201 of the smart device 200 executing programs and controlling the operation of each configuration shown in Figures 1 and 2.
[0032] In step S301, the digital camera 100 and the smart device 200 establish communication using BLE, an example of short-range wireless communication. BLE communication is slower than communication via a wireless LAN network. Therefore, as will be explained below, in this embodiment, the acquisition of image lists and thumbnails, which require high-speed communication, is performed via the wireless LAN network.
[0033] In step S302, when the smart device 200 receives a connection operation from the operation unit 205 to connect to the wireless LAN network, it requests a handover connection to connect to the digital camera 100 via the wireless LAN network. In this embodiment, for example, the smart device 200 launches an application as a connection operation to the wireless LAN network formed by the digital camera 100. In this way, the smart device 200 can connect to the digital camera 100 via the wireless LAN network and communicate at high speed simply by operating the smart device 200, without operating the digital camera 100. Figure 4(a) shows the screen (UI) of the launched application, and 401 in Figure 4(a) is a screen for displaying images such as still images taken by the digital camera 100. In the example shown on screen 401, the smart device 200 has not yet connected to the wireless LAN network formed by the digital camera 100 and has not yet acquired any images, so no images are displayed.
[0034] In step S303, the digital camera 100 sends a response to the handover connection request to the smart device 200, and then disconnects the BLE communication. In step S304, the digital camera 100 activates the access point and operates as a simple AP, forming a wireless LAN network.
[0035] In step S305, the digital camera 100 starts generating a cache of image lists. For example, the digital camera 100 selects images recorded on the recording medium 110 to generate a cache of image lists and stores the generated image list cache in the working memory 104. In this embodiment, there may be multiple lists of images to cache. For example, it may include the file paths and number of images for each category such as "still images," "videos," and "favorites" to be displayed on the smart device 200. However, the categories of the list are not limited to these. For example, any list that can be created based on information that can be obtained and generated from information such as image analysis and image metadata may be used, such as images containing people or videos of a certain number of seconds or longer.
[0036] In step S306, the smart device 200 sends an access point connection request to connect to the wireless LAN network formed by the digital camera 100. During this time, the operation in step S305 continues. In this embodiment, the smart device 200 cannot immediately recognize that the digital camera 100's access point for connecting to the wireless LAN network has been activated. Therefore, the smart device 200 establishes communication by sending an access point connection request after a certain period of time has elapsed since receiving the handover connection permission response in step S303. In this embodiment, the digital camera 100 uses this time to create a list of images in advance in step S305.
[0037] In step S307, the digital camera 100 sends an access point connection permission response to the smart device 200, establishing wireless LAN communication. In this embodiment, the case in which the digital camera 100 and the smart device 200 communicate via a BLE connection and a handover request to the wireless LAN has been described as an example, but the invention is not limited to this. A simple AP may also be activated by operating the control unit 105 of the digital camera 100 without using a BLE connection.
[0038] In step S308, the smart device 200 requests an image list from the digital camera 100 to obtain images to display on the display unit 206. The image list is a list of images that the digital camera 100 provides to the smart device 200. The image list is generated based on cached data. For example, the image list includes the file path and number of images that the digital camera 100 provides to the smart device 200. In step S309, the digital camera 100 sends the image list created in step S305. By creating the image list in step S305, it can respond immediately to requests from the smart device 200.
[0039] In the example shown in Figure 3, the response to S307 is returned after the processing of S305 is completed. It is preferable, but not limited to, that the processing of S307 be sent after the completion of S305 in order to reliably answer the subsequent list request in S308. For example, if the processing load of S305 is high, the response to S307 may be returned without waiting for the completion of S305. Even in this case, it is expected that the processing of S305 will be completed by the time the smart device connects to the access point and subsequently requests the image list.
[0040] In step S310, the smart device 200 requests the digital camera 100 to retrieve an image thumbnail using the file path recorded in the image list. In step S311, the digital camera 100 sends the requested image thumbnail to the smart device 200. By repeating steps S310 and S311, the smart device 200 can obtain an image thumbnail to display on it. In step S312, the smart device 200 displays a screen on the display unit 206 as shown in Figure 4(b). In this way, the image taken by the digital camera 100 is displayed on the smart device 200 at 421 in Figure 4(b).
[0041] The sequence of operations for image provision processing of the digital camera 100 will be explained with reference to Figure 5. This process can be realized by the control unit 101 of the digital camera 100 executing a program stored in the non-volatile memory 103 and controlling the operation of each component of the digital camera 100 as needed. This process can also be started when the digital camera 100 and the smart device 200 come within a predetermined distance where BLE connection is possible.
[0042] In step S501, the control unit 101 determines whether a BLE connection has been established with the smart device 200 via the short-range communication unit 112. If the control unit 101 detects that a BLE connection has been established with the smart device 200, for example based on a notification from the short-range communication unit 112, it proceeds to S502; otherwise, it repeats the process in step S501.
[0043] In step S502, the control unit 101 determines whether it has detected the receipt of a handover connection request from the smart device 200 via the short-range communication unit 112. If the control unit 101 determines that it has detected the receipt of a handover connection request from the smart device 200, for example, based on a notification from the short-range communication unit 112, it sends a response to the handover connection request to the smart device 200 and proceeds to step S503. On the other hand, if the control unit 101 determines that it has not detected the receipt of a handover connection request, it returns to processing in S502.
[0044] In step S503, the control unit 101 activates the access point in simple AP mode to connect with the smart device 200 via the communication unit 111 and forms a wireless LAN network.
[0045] In step S504, the control unit 101 starts generating a cache of image lists. For example, the control unit 101 selects images recorded on the recording medium 110, generates an image list as a cache, and stores the generated image list cache in the working memory 104. As for the caching method, the control unit 101 refers to the image information for each image file recorded on the recording medium 110, classifies it, and adds the image information to the image list cache according to the classification result of the image information. For example, if there are multiple image lists such as "still images," "videos," and "favorites," each image list consists of information of images selected according to the type of image (for example, an image with metadata attached, such as a still image, video, or favorite). As will be described in detail later, when the control unit 101 receives an image list acquisition request specifying any of the image lists, it sends the image list corresponding to that specification (for example, "still images") from among the multiple image lists to the smart device 200. The control unit 101 stores the "still images," "videos," and "favorites" lists in order of the newest shooting date and time, along with the number of images. Each list has a predetermined upper limit on the number of images, and once that limit is reached, no further additions are made. Because the capacity of the working memory 104 is limited, this allows the working memory 104 to hold a large number of images even when the recording medium 110 has a large number of images. In this embodiment, this upper limit is set to, for example, 100 images. In this embodiment, the file paths and number of images of "still images," "videos," and "favorites" displayed on the smart device 200 are cached, but this is not the only example. As mentioned above, any list that can be created based on information that can be obtained and generated from image analysis and image metadata, such as images containing people or videos of a certain length of time or longer, is acceptable. In addition, the control unit 101 may cache only the "still image" list for display on the screen in Figure 4(b). By doing so, there is no need to create other image lists, and the creation time of the image list cache can be shortened.
[0046] In step S505, the control unit 101 determines, via the communication unit 111, whether it has received a connection request from the smart device 200 to the access point activated by the digital camera 100 (i.e., the wireless LAN formed by the digital camera 100). If the control unit 101 determines, for example, through notification from the communication unit 111, that it has received a connection request from the smart device 200 to the access point, it establishes a wireless LAN connection in response to the connection request. The control unit 101 then proceeds to process S506. On the other hand, if the control unit 101 determines that it has not received a connection request from the smart device 200 to the access point, it returns to process S505.
[0047] In step S506, the control unit 101 determines, via the communication unit 111, whether it has received a request to acquire an image list from the smart device 200. If the control unit 101 determines, for example, through a notification from the communication unit 111, that it has received a request to acquire an image list from the smart device 200, it proceeds to step S507; otherwise, it proceeds to step S512. In this embodiment, the control unit 101 specifies, for example, the content of the request to acquire an image list, including "type of image list," "number of images to acquire," and "which image to start with."
[0048] In step S507, the control unit 101 determines whether the requested image list is within the cache range according to the content of the acquisition request from the smart device 200. If the control unit 101 determines that the requested image list is within the cache range, it proceeds to step S508; otherwise, it proceeds to step S511. Next, in step S508, the control unit 101 determines whether the image list is already cached. If it determines that the requested image list is already cached, it proceeds to step S510; otherwise, it proceeds to step S509.
[0049] The process in step S507 (i.e., the process of determining whether the requested image is within the cache range) will be explained in more detail. For example, let's consider a case where the digital camera 100 has cached 100 images each for "still images," "videos," and "favorites" as image lists. Let's also assume that the content of the image list acquisition request from the smart device 200 is "Type of image list: still images," "Number of images to acquire: 100," and "Which image to acquire from: 1." In this case, the control unit 101 determines that the image list to be acquired is within the cache range and proceeds to step S508. On the other hand, if the content of the image list acquisition request is "Type of image list: still images," "Number of images to acquire: 200," and "Which image to acquire from: 1," the control unit 101 determines that the image list related to the acquisition request is outside the cache range. In this case, the control unit 101 proceeds to step S511.
[0050] In step S509, the control unit 101 generates an image list, similar to step S504. This is to prevent the image list from being not cached when the control unit 101 attempts to perform the cache deletion process described later.
[0051] In step S510, the control unit 101 transmits the image list based on the generated cache (i.e., the image list retrieved from the cache) to the smart device 200 via the communication unit 111. In step S511, the control unit 101 generates an image list from the image files recorded on the recording medium 110 via the communication unit 111 and transmits the generated image list to the smart device 200.
[0052] In step S512, the control unit 101 determines whether an image has been captured by the imaging unit 102 and whether an image file has been added. If the control unit 101 detects the addition of an image file, for example, through a notification from the imaging unit 102 or the recording medium 110, it proceeds to step S513; otherwise, it proceeds to step S514.
[0053] In step S513, the control unit 101 classifies the added image using its image information to determine whether it is a "still image," "video," or "favorite," and updates the respective image list according to the classification result. For example, if the number of images in the image list has not reached the upper limit, the control unit 101 adds the added image to the image list. If the number of images in the image list has reached the upper limit, the control unit 101 removes the image with the oldest shooting date and time from the image list and adds the added image to the image list. In this way, images with newer shooting dates and times can be kept in the image list.
[0054] In step S514, the control unit 101 determines whether or not an image has been deleted from the recording medium 110. For example, if the control unit 101 detects that an image has been deleted from the recording medium 110, such as through a notification from the recording medium 110, it proceeds to step S515. In step S515, the control unit 101 deletes the image list cache held in the working memory 104. However, in this embodiment, the control unit 101 does not immediately generate a new cache after deleting the image list cache. This is because if the control unit 101 generates a new cache each time an image is deleted by user operation, the cache creation process would be wasted. In other words, when the control unit 101 deletes the image list cache, it starts generating the image list cache in response to receiving a request to retrieve the image list from the smart device 200.
[0055] Furthermore, in this embodiment, the control unit 101 deletes the cache upon detection of image deletion, but the deletion of the cache is not limited to this. Before deleting an image, the control unit 101 may determine, based on the information of the image to be deleted, whether or not the image to be deleted is included in the image list cache. Then, if the control unit 101 determines that the image to be deleted is included in the image list cache, it may delete the image list cache. In this way, it is possible to prevent the deletion of the image list cache even when deleting an image that is not included in the cache. Alternatively, if the control unit 101 determines that the image to be deleted is included in the image list cache, it may delete only that image from the image list cache. In this case, the control unit 101 may add the image with the most recent shooting date and time that is not currently held in the image list cache held on the recording medium 110.
[0056] In step S516, the control unit 101 determines whether it has received a request to acquire an image thumbnail from the smart device 200 via the communication unit 111. If the control unit 101 detects that it has received a request to acquire an image thumbnail, for example, through a notification from the communication unit 111, it proceeds to step S517; otherwise, it proceeds to step S518. In step S517, the control unit 101 transmits an image thumbnail corresponding to the thumbnail acquisition request to the smart device 200 via the communication unit 111.
[0057] In step S518, the control unit 101 determines, via the communication unit 111, whether the wireless LAN connection with the smart device 200 has been disconnected. If the control unit 101 detects that the wireless LAN connection with the smart device 200 has been disconnected, such as through a notification from the communication unit 111, it proceeds to step S519; otherwise, it returns to step S506.
[0058] In step S519, the control unit 101 deletes the cache of the image list held in the working memory 104, and then terminates this series of processes. Note that the deletion of the cache when communication is interrupted may be performed by other methods. For example, if the control unit 101 changes the communication with the smart device 200 from BLE communication to wireless LAN communication, it may not delete the image list cache even if it detects that the wireless LAN communication has been interrupted, as long as BLE communication is maintained. The control unit 101 may also delete the cache if the BLE communication is interrupted again.
[0059] Thus, the control unit 101 starts generating the image list cache after a predetermined operation to establish communication with the smart device 200 (e.g., access point activation) but before receiving a request from the smart device 200 to acquire the image list. In this way, the image list cache can be generated prior to the request from the smart device 200 to acquire the image list.
[0060] Furthermore, if BLE communication and wireless LAN communication can be established with an external device, as described above, the smart device 200 may send an access point connection request after a certain period of time has elapsed since receiving a handover connection permission response. In this case, the control unit 101 can effectively utilize the time until it receives an image list acquisition request from the smart device 200 (in S506) for cache generation. In the example above, the control unit 101 started the access point in simple AP mode in S503 and then started generating the image list cache in S504. However, the control unit 101 is not limited to after the access point has been started, as long as it is before receiving an image list acquisition request from the smart device 200. For example, it may start generating the cache before the access point has been started, i.e., after receiving a request to hand over communication with the smart device 200 to wireless LAN communication (S502). Alternatively, the control unit 101 may start generating the cache after receiving a connection request to perform wireless LAN communication using the access point (S505).
[0061] In this embodiment, the case described as an example where a predetermined operation for establishing communication with the smart device 200 (e.g., access point activation) is a predetermined operation for establishing communication (i.e., wireless LAN) used to provide images to the smart device 200. However, the above predetermined operation may also be an operation for establishing BLE communication. That is, cache generation may be started after establishing BLE communication.
[0062] Furthermore, this embodiment describes an example in which the generation of an image list cache is initiated in response to an operation related to establishing wireless LAN communication, which has a faster communication speed than BLE communication. However, any communication used to provide images from the digital camera 100 to the smart device 200 is not limited to wireless LAN communication; other communication methods may also be used.
[0063] The sequence of operations for image acquisition processing of the smart device 200 will be explained with reference to Figures 4 and 6. This process can be realized by the control unit 201 of the smart device 200 executing a program stored in the non-volatile memory 203 and controlling the operation of each component of the smart device 200 as needed. This process can also be started when the digital camera 100 and the smart device 200 come within a predetermined distance where BLE connection is possible. Figure 4(c) shows an example of the UI of the smart device 200 for displaying some of the images taken by the digital camera 100. Figure 4(d) shows an example of the UI of the smart device 200 for displaying all of the images taken by the digital camera 100.
[0064] In step S601, the control unit 201 determines whether a BLE connection has been established with the digital camera 100 via the short-range communication unit 212. If the control unit 201 detects that a BLE connection has been established with the digital camera 100, for example based on a notification from the short-range communication unit 212, it proceeds to S602; otherwise, it repeats the process in step S601.
[0065] In step S602, the control unit 201 determines whether an operation to request a handover connection has been input by operating the operation unit 205. If the control unit 201 detects an operation to request a handover connection, for example, based on a notification from the operation unit 205, it proceeds to step S603; otherwise, it returns to step S602. For example, an operation to request a handover connection includes, for example, launching an application. By launching an application, the control unit 201 displays the UI shown in Figure 4(a) on the display unit 206.
[0066] In step S603, the control unit 201 sends a handover connection request to the digital camera 100 via the short-range communication unit 212. When the control unit 201 receives a response from the digital camera 100 to the handover connection request, it waits for a certain period of time before connecting to the digital camera 100's simple AP via the communication unit 211. This allows the smart device 200 to participate in (connect to) the wireless LAN network formed by the digital camera 100. In this embodiment, the control unit 201 does not have a mechanism to detect the activation of the digital camera 100's simple AP, so it waits for a certain period of time before connecting to the simple AP. However, this embodiment is not limited to this. For example, if the smart device 200 has a mechanism to detect the activation of the simple AP, the control unit 201 may detect the activation of the simple AP and then connect to the simple AP. For example, the control unit 201 may use a BLE connection to receive a notification from the digital camera 100 after the simple AP has been activated, thereby detecting the activation of the simple AP. Alternatively, the control unit 201 may detect the activation of the simple AP by having the smart device 200 periodically search the network formed by the digital camera 100 at regular intervals.
[0067] In step S604, the control unit 201 sends a request to the digital camera 100 via the communication unit 211 to acquire a list of still images. The request to acquire the image list includes information such as "Type of image list: still images", "Number of images to acquire: 100", and "Starting image number: 1". In this example, it is assumed that the request is for an image list within the range held by the digital camera 100. Therefore, as described above, the digital camera 100 can return (send) the cached image list to the smart device 200.
[0068] In step S605, the control unit 201 obtains the file path (and number of images) from the image list acquired in step S604 via the communication unit 211. Using the obtained file path, the control unit 201 sends a request to the digital camera 100 to acquire image thumbnails. The control unit 201 then acquires the thumbnails of the images related to the acquisition request from the digital camera 100.
[0069] In step S606, the control unit 201 displays a list of images shown in Figure 4(b) on the display unit 206. The control unit 201 displays image thumbnails and the number of images in the image list. Button 422 in Figure 4(b) is a button for instructing the user to transition to the playback screen. In step S607, the control unit 201 determines whether button 422 has been selected by operating the operation unit 205. If the control unit 201 detects that button 422 has been selected, such as through a notification from the operation unit 205, it proceeds to step S608; otherwise, it proceeds to step S613.
[0070] In step S608, the control unit 201 sends a request to the digital camera 100 via the communication unit 211 to acquire a list of still images in order to display the playback screen. The request to acquire the image list includes information such as "Type of image list: still images", "Number of images to acquire: 100", and "Starting image number to acquire: 1". In this example, it is assumed that the request is for an image list within the range held by the digital camera 100. Therefore, the digital camera 100 can return (send) the cached image list to the smart device 200. In this embodiment, the control unit 201 makes an image list acquisition request in step S608, similar to step S604, but this embodiment is not limited to this. The image list acquired in step S604 may be reused.
[0071] In step S609, the control unit 201 sends a request to the digital camera 100 via the communication unit 211 to acquire a video image list. The request to acquire the image list includes information such as "Type of image list: video", "Number of images to acquire: 100", and "Starting image number to acquire: 1". In this example, it is assumed that the request is for an image list within the range held by the digital camera 100. Therefore, the digital camera 100 can return (send) the cached image list.
[0072] In step S610, the control unit 201 sends a request to the digital camera 100 via the communication unit 211 to retrieve the favorites list. The request to retrieve the image list includes the information: "Type of image list: Favorites", "Number of images to retrieve: 100", and "Starting image number to retrieve from: 1". It is assumed that the request is for an image list within the range held by the digital camera 100. Therefore, the digital camera 100 can return (send) the cached image list.
[0073] In step S611, the control unit 201 uses the file path of the image list acquired in steps S608 to S610 to send a request to the digital camera 100 to acquire image thumbnails, and acquires image thumbnails.
[0074] In step S612, the control unit 201 displays the information shown in Figure 4(c) on the display unit 206. The control unit 201 displays an image list consisting of image thumbnails and the number of images. Figure 4(c) is the application screen, and area 441 in Figure 4(c) displays still images taken with the digital camera 100. The control unit 201 displays a list and number of still images acquired in steps S608 and S611 in area 441. Area 442 in Figure 4(c) displays video images taken with the digital camera 100. The control unit 201 displays a list and number of video images acquired in steps S609 and S611 in area 442. Area 443 in Figure 4(c) displays favorite images taken with the digital camera 100. The control unit 201 displays a list and number of favorite images acquired in steps S610 and S611 in area 443.
[0075] In this embodiment, the image list was acquired in steps S608 to S610, and then the image thumbnails were acquired. However, the embodiment is not limited to this. The control unit 201 may acquire and display the image thumbnails each time the image list is acquired in steps S608, S609, and S610.
[0076] The button 423 in Figure 4(b) is a button used to instruct the system to transition to a screen that displays all still images recorded on the recording medium 110 of the digital camera 100. In step S613, the control unit 201 determines whether button 423 has been selected by operating the operation unit 205. If the control unit 201 detects that button 423 has been selected, it proceeds to step S614; otherwise, it proceeds to step S617.
[0077] In step S614, the control unit 201 sends an image list acquisition request to the digital camera 100 via the communication unit 211. The image list acquisition request includes information such as "Type of image list: still images", "Number of images to acquire: all", and "Starting image acquisition: 1". If the number of still images recorded on the recording medium 110 of the digital camera 100 exceeds 100, it exceeds the range of the cache held by the digital camera 100 in this embodiment, so the digital camera 100 creates an image list from the recording medium 110.
[0078] In step S615, the control unit 201 sends a request to the digital camera 100 via the communication unit 211 to obtain an image thumbnail using the file path of the image list acquired in step S614, and obtains the image thumbnail.
[0079] In step S616, the control unit 201 displays the information shown in Figure 4(d) on the display unit 206. Figure 4(d) is the application screen, and 461 in Figure 4(d) is the area for displaying still images taken by the digital camera 100. In this way, images can be displayed quickly on the screens in Figures 4(b) and 4(c), and all images held by the digital camera 100 can be displayed on the screen in Figure 4(d).
[0080] Button 444 in Figure 4(c) is a button that instructs the system to transition to a screen that displays all still images recorded on the recording medium 110 of the digital camera 100. When button 444 is pressed, the control unit 201 should perform the same processing as when button 423 is pressed. Also, buttons 445 and 446 in Figure 4(c) are buttons that instruct the system to transition to a screen that displays all video images and all favorite images, respectively. Although the type of image list requested from the digital camera 100 is different, the other processing is the same as when displaying all still images.
[0081] The button 424 in Figure 4(b) is a button that instructs the user to transition to the TOP screen displayed when the application is launched. In step S617, the control unit 201 determines whether the button 424 has been selected by operating the operation unit 205. If the control unit 201 detects that the button 424 has been selected, it proceeds to step S618; otherwise, it proceeds to step S621. After that, the control unit 201 executes the processes from step S618 to step S620 in the same way as steps S604 to S606 described above.
[0082] In step S621, the control unit 201 determines, via the communication unit 211, whether the wireless LAN connection with the digital camera 100 has been disconnected. If the control unit 201 detects that the wireless LAN connection has been disconnected, for example, through a notification from the communication unit 211, it terminates this series of operations; otherwise, it returns to step S607.
[0083] As described above, in this embodiment, the control unit 101 starts generating the image list cache after a predetermined operation for establishing communication with the smart device 200 (e.g., access point activation) but before receiving a request from the smart device 200 to acquire the image list. By doing so, the image list cache can be generated prior to the request from the smart device 200 to acquire the image list. In other words, it becomes possible to provide a quick response to requests from the smart device 200 for information provided by the digital camera 100.
[0084] (Other embodiments) The present invention can also be realized by supplying a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC) that implements one or more functions.
[0085] The invention is not limited to the embodiments described above, and various modifications and variations are possible without departing from the spirit and scope of the invention. Accordingly, claims are attached to disclose the scope of the invention. [Explanation of Symbols]
[0086] 100...Digital camera, 101...Control unit, 102...Imaging unit, 110...Recording medium, 111...Communication unit, 112...Short-range communication unit
Claims
1. It is an electronic device, A means of communication with an external device, A generation means for generating an image list showing images to be provided to the external device, The system includes control means for transmitting the image list to the external device when a request to acquire the image list is received from the external device. The control means, after a predetermined operation relating to establishing communication with the external device and before receiving a request from the external device to acquire the image list, starts generating a cache of the image list, and, upon receiving the request to acquire the image list, transmits the image list based on the cache to the external device. The control means starts generating a cache of image lists in response to a predetermined operation relating to establishing communication used to provide images to the external device. An electronic device characterized by the following features.
2. The generation means generates multiple image lists, each of which is a list of images selected according to the type of image. The electronic device according to claim 1, wherein the control means transmits to the external device an image list corresponding to the specified list from among the plurality of image lists in response to receiving a request from the external device to acquire the specified image list.
3. An imaging means for capturing an image, The system further includes a classification means for classifying an image based on its image information, The electronic device according to claim 2, characterized in that the control means adds information about the image to a cache of the image list corresponding to the classification result for the image among the plurality of image lists.
4. The system further includes a deletion means for deleting an image stored in a storage means, The electronic device according to any one of claims 1 to 3, characterized in that the control means deletes the cache of the image list when a predetermined image is deleted by the deletion means.
5. The electronic device according to claim 4, characterized in that the control means does not delete the image list cache if the information of the image to be deleted by the deletion means is not included in the image list cache.
6. The electronic device according to claim 5, characterized in that when the image list cache is deleted, the control means starts generating an image list cache in response to receiving a request to acquire the image list from the external device, and transmits the image list based on the cache to the external device.
7. The communication means is capable of establishing a first communication and a second communication, which has a higher communication speed than the first communication and is used to provide images to the external device, with the external device. The electronic device according to any one of claims 1 to 6, characterized in that the control means does not generate a cache of image lists when establishing the first communication with the external device.
8. The communication means is capable of establishing a first communication and a second communication, which has a higher communication speed than the first communication and is used to provide images to the external device, with the external device. The electronic device according to any one of claims 1 to 6, characterized in that the control means starts generating a cache of image lists in response to a predetermined operation relating to establishing communication that changes the communication with the external device from a first communication to a second communication.
9. The electronic device according to claim 8, wherein the predetermined operation relating to the establishment of the communication includes receiving a request to hand over the communication with the external device from the first communication to the second communication, activating an access point for the second communication, or receiving a connection request to perform the second communication using the access point.
10. The electronic device according to any one of claims 1 to 9, characterized in that the control means deletes the image list cache in response to detecting a disconnection of the communication used to provide images to the external device.
11. The communication means is capable of establishing a first communication and a second communication, which has a higher communication speed than the first communication and is used to provide images to the external device, with the external device. The electronic device according to any one of claims 1 to 6, characterized in that the control means does not delete the image list cache even if it detects a disconnection of the second communication when the communication with the external device is changed from the first communication to the second communication.
12. A control method for an electronic device having communication means for communicating with an external device and generation means for generating an image list showing images to be provided to the external device, After a predetermined operation relating to establishing communication with the external device and before receiving a request from the external device to acquire the image list, the process of starting the generation of an image list cache, The process includes a step of controlling the system to transmit the image list based on the cache to the external device in response to receiving a request from the external device to acquire the image list, In the aforementioned initiation step, the generation of an image list cache is initiated in accordance with the predetermined operation relating to the establishment of communication used to provide images to the external device. A method for controlling electronic equipment characterized by the following features.
13. A program for causing a computer to function as one of the means of an electronic device according to any one of claims 1 to 11.