[ detailed description ] embodiments
Fig. 1 is a functional block diagram of an information capturing apparatus according to an embodiment of the present invention. FIG. 2 is a system diagram of an information capture device according to an embodiment of the present invention.
Referring to fig. 1 and 2, theinformation retrieving apparatus 20 includes acamera module 210, aprocessing unit 220, anetwork module 230, and astorage unit 240. Theprocessing unit 220 is coupled to thecamera module 210, thenetwork module 230 and thestorage unit 240. In some embodiments, theinformation capturing device 20 can be a multimedia capturing device such as a camcorder (body word camera), an internet protocol camera (IP camera), a walkman, a voice pen, a mobile phone, or a driving recorder. In some embodiments, theProcessing Unit 220 may be a Central Processing Unit (CPU), a soc (system on a chip) chip, or a Microcontroller (MCU), but the invention is not limited thereto.
Thecamera module 210 can record images and/or sounds of the surrounding environment. That is, thecamera module 210 is used to capture the ambient environment to generate an ambient image stream representing the ambient environment. In use, the user operates the start switch on theinformation capturing device 20 to start theinformation capturing device 20 for real-time information capturing, which belongs to the general information capturing procedure of theinformation capturing device 20. In some embodiments, thecamera assembly 210 may be implemented by a camera lens, a microphone, and an image processing unit.
Thestorage unit 240 has a storage space for storing the environmental image stream. The storage space refers to a storage area left after the system occupation area or the bad track area is deducted from thestorage unit 240. All the capacity of the storage space is called total capacity, and the remaining capacity after deducting the environmental image stream recorded under the general information capturing procedure is idle. In some embodiments, thestorage unit 240 may be implemented by one or more storage elements. Each storage element may be a non-volatile memory, such as a Read Only Memory (ROM), a Flash memory (Flash memory), or a volatile memory, such as a Random Access Memory (RAM).
Refer to fig. 1 and 2. Thenetwork module 230 connects to thehost 30 through the internet to receive the loop recording policy. Thenetwork module 230 may be a communication module such as a WIFI module, a 3G module, or a 4G module. Thehost 30 may be an electronic device with a connection function, such as a smart phone, a tablet computer, a notebook computer, or a server, but the invention is not limited thereto.
In some embodiments, the loop-around Policy (Policy) may be instructions for theinformation retrieving device 20, such as: start/stop criteria, resource allocation, condition setting or decision logic, etc. In some embodiments, theprocessing unit 220 can implement the loop logging policy of an embodiment by executing firmware or software algorithms stored in thestorage unit 240. Wherein the firmware or software algorithm may be implemented by a plurality of computer program instructions. In some embodiments, the plurality of computer program instructions may be stored in a computer program product. Herein, the computer program product can be a readable recording medium for theinformation capturing device 20 to load and execute. In some embodiments, the computer program instructions themselves may be a computer program product and transmitted to the information capturing device 20 (stored in the storage unit 240) in a wired or wireless manner.
In some embodiments, theprocessing unit 220 executes the loop logging program according to a loop logging policy. For example, in the case of executing the loop recording procedure, theprocessing unit 220 continuously captures the status monitoring record (e.g., the operation status of each component in theinformation capturing apparatus 20, the time stamp of each system start, the record of the moving position of theinformation capturing apparatus 20, and the image information or the sound information obtained by the camera module 210) and stores it in the storage space of thestorage unit 240 with the specified storage capacity. In some embodiments, the records obtained by the loop recording process cannot be deleted by theinformation retrieving device 20. In other words, theinformation acquisition apparatus 20 performs a function similar to a black box by loading the loop recording strategy.
Fig. 3 and 4 are flowcharts illustrating a method for controlling an information retrieving apparatus according to an embodiment of the present invention. First, theinformation retrieving device 20 receives a loop recording policy through thenetwork module 230 via the network (step S110), where the loop recording policy at least includes a start instruction and a storage capacity setting.
Next, theprocessing unit 220 calculates a designated storage amount according to the storage capacity setting and the total capacity of the storage space of the storage unit 240 (step S120).
In some embodiments, the specified storage capacity is set to a predetermined value directly within the loop recording policy, and the specified storage capacity is the predetermined value. For example, if the storage capacity in the circular recording strategy is set to 5GB, the specified storage capacity is 5 GB. In some embodiments, the storage capacity within the loop recording policy is set to a given proportion and the specified storage amount is a given proportion of the total capacity. For example, the storage capacity in the circular recording strategy is set to 40%, and when the total storage capacity of thestorage unit 240 is 10GB, the specified storage capacity is 4 GB.
Reference is continued to fig. 3. After the designated storage amount is calculated, the free amount of the storage space is detected according to the designated storage amount (step S130) and it is determined whether the free amount of the storage space is full of the designated storage amount (step S140).
In some embodiments, following step S140, when the idle amount satisfies the specified storage amount, the specified storage amount is limited to be dedicated to the loop recording process (step S150). That is, when the free space is larger than the space required by the specified storage capacity, the specified storage capacity is divided out in the total capacity of the storage space for the limited execution of the loop recording procedure, and the rest of the free space in the storage space is used for the general information retrieving procedure. Here, theprocessing unit 220 executes the loop recording program, which means that theprocessing unit 220 starts thecamera module 210 and stores the environmental image stream into the storage space with the specified storage capacity. When theprocessing unit 220 executes the general information capturing procedure and the loop recording procedure, theprocessing unit 220 turns on thecamera assembly 210 and stores the environmental image stream into the remaining free storage space.
In some embodiments, continuing to step S140, when the free amount fails to satisfy the specified storage amount, the boot instruction is not executed until the free amount of the storage space satisfies the specified storage amount (step S152). That is, when the free space is smaller than the space required by the specified storage amount, the existing free space is limited to be dedicated to the general information extraction procedure, and theprocessing unit 220 can only execute the general information extraction procedure on the currently used storage space. And when theprocessing unit 220 finds that a new idle amount of the storage space used by the general information capturing program occurs, it detects a new idle amount of the storage space according to the specified storage amount again and determines whether the new idle amount of the storage space is full of the specified storage amount, when the new idle amount still cannot satisfy the specified storage amount, the new idle amount is defined as being dedicated to the general information capturing program, and repeats the above-mentioned defining process until the idle amount satisfies the specified storage amount, and when the idle amount satisfies the specified storage amount, it triggers the start criterion, and theinformation capturing device 20 starts to execute the loop recording process.
Refer to fig. 4. In some embodiments, after step S140, when the idle amount fails to satisfy the specified storage amount, theprocessing unit 220 limits the idle amount to be dedicated to the loop recording process (step S154) and directly starts to execute the loop recording process according to the start instruction (step S156). That is, when the amount of free space is less than the amount of space required for the specified storage amount, the existing amount of free space is limited to be dedicated to the loop log program, and theprocessing unit 220 starts executing the loop log program using the existing amount of free space.
Fig. 5 to 8 are schematic views illustrating a usage state of a storage space according to an embodiment of the invention. In the figure, the storage block is gray to indicate that information is stored in the storage block, and white to indicate that the storage block is idle. Assume that the storage space in thestorage unit 240 has 10 storage blocks F01-F10, and each storage block has 1GB of storage capacity, as shown in FIGS. 5-8.
In one example, referring to fig. 5, the storage blocks F01 through F08 already store the environmental image streams (which include the first environmental image stream and the second environmental image stream) generated by thecamera module 210 during the general information capturing process. Wherein, the storage blocks F01 and F02 store a first environmental video stream, and the storage blocks F03 to F08 store a second environmental video stream. In other words, the storage space of thestorage unit 240 already uses the storage blocks F01 to F08, and the storage blocks F09 and F10 are idle. The sum of the storage capacity of the idle storage block F09 and the storage block F10 is 2 GB.
Theprocessing unit 220 receives the loop recording policy through thenetwork module 230 and detects the idle amount of thestorage unit 240 accordingly. The calculated specified storage capacity is set to 5GB according to the storage capacity in the loop recording policy. When theprocessing unit 220 detects that the idle amount of thestorage unit 240 is 2GB (less than 5GB, i.e. the idle amount does not satisfy the specified storage amount), theprocessing unit 220 does not execute the boot instruction and limits the storage amount of the idle storage blocks F09 and F10 to be dedicated to the loop recording procedure. At this time, when the user wants to store the third segment of the environmental image stream, theinformation capturing device 20 will notify the user that the storage space is full.
Referring to fig. 6, after the user selects to purge (e.g., delete or output to other devices such as a server or an external host), theprocessing unit 220 detects that the storage block F01, the storage block F02 are idle, and the idle amount of the storage block F01, the storage block F02, the storage block F09, and the storage block F10 is 4GB, and the idle amount still does not satisfy the specified storage amount, and further defines the storage amount of the storage block F01 and the storage block F02 as being dedicated to the loop recording procedure, that is, the storage amount of the storage block F01, the storage block F02, the storage block F09, and the storage block F10 as being dedicated to the loop recording procedure. At this time, when the user wants to store the third segment of the environmental image stream, theinformation capturing device 20 still notifies the user that the storage space is full. Then, after the user again chooses to clear the second environmental video stream, theprocessing unit 220 detects that the storage blocks F03 through F08 are idle and the idle amount of the storage blocks F01 through F10 is 10GB, and the idle amount satisfies the specified storage amount, and theprocessing unit 220 additionally limits the storage amount of the storage block F03 to be dedicated to the loop recording process. Here, theprocessing unit 220 defines the storage blocks F01 through F03 and F09 through F10 as being dedicated to the loop recording process, i.e., the free amount of storage space has satisfied the specified storage amount. At this time, theprocessing unit 220 executes the boot instruction, and executes the loop recording procedure using the storage blocks F01 to F03 and F09 to F10. The storage blocks F04 to F08 are used for streaming the environmental video while executing the general information extraction procedure.
In another example, referring to fig. 5, when theprocessing unit 220 detects that the idle amount of thestorage unit 240 is 2GB (less than 5GB, i.e., the idle amount does not satisfy the specified storage amount), theprocessing unit 220 does not execute the start instruction, and waits for the idle amount to reach or exceed 5GB to re-limit the specified storage amount of the idle amount to be dedicated by the loop recording program and execute the start instruction. For example, referring to fig. 7, after the user selects to clear the second environmental video stream, theprocessing unit 220 detects that the storage blocks F03 through F08 are idle, and the idle amount of the storage blocks F03 through F10 is 8GB, which exceeds the specified storage amount of 5GB, and the storage amount of 5GB of the storage blocks F06 through F010 is limited to be dedicated to the loop recording procedure. At this time, when the user wants to store the third segment of the environmental image stream, theinformation capture apparatus 20 stores the third segment of the environmental image stream into the storage blocks F03 to F05.
In another example, referring to FIG. 5, when theprocessing unit 220 detects that the idle amount of thestorage unit 240 is 2GB (less than 5GB, i.e. the idle amount does not satisfy the specified storage amount), theprocessing unit 220 may also directly take the idle amounts (storage blocks F09 and F10) as the specified storage amount and limit them to be dedicated to the loop recording procedure, and then execute the start instruction.
In some embodiments, the specified amount of storage may be the same region within the storage space. In some embodiments, the specified amount of storage may be in different regions dispersed within the storage space. In other words, the sum of the different areas can reach the specified storage amount. Here, continuing with fig. 8 as an example, theprocessing unit 220 defines the storage block F01, the storage block F02, the storage block F05, the storage block F09, and the storage block F10 as being dedicated to the loop recording process, that is, although the areas of the storage space are different, the idle amount also satisfies the specified storage amount.
In still another example, referring to fig. 8, the storage blocks F03 through F04 have stored therein a first environmental image stream generated by thecamera module 210 in a general information extraction process, and the storage blocks F06 through F07 have stored therein a second environmental image stream. Theprocessing unit 220 defines the storage blocks F01 through F02, F05, and F09 through F10 as being dedicated to the loop recording process, i.e. the free amount of storage space has satisfied the specified storage amount. At this time, theprocessing unit 220 executes the boot instruction, and executes the loop recording procedure using the storage blocks F01 to F02, F05, and F09 to F10. The storage blocks F03-F04 and the storage blocks F06 to F08 are used for environmental video streaming when a general information extraction process is performed. For example, the third environment video stream is stored in the storage block F08 according to the user's instruction.
In some embodiments, the loop recording process and the general information extraction process simultaneously extract the environmental image stream generated by thecamera assembly 210. Referring to fig. 8, when theprocessing unit 220 executes the loop recording procedure and the general information capturing procedure at the same time, theprocessing unit 220 regards the environmental image stream generated by thecamera module 210 as the status monitoring record and stores the status monitoring record in the storage blocks F01, F02, F05, F09 and F10, and stores the environmental image stream captured by thecamera module 210 at the same time as the third environmental image stream in the storage block F08 according to the user's instruction.
FIG. 9 is a flowchart illustrating a method for controlling an information retrieving device according to an embodiment of the present invention. Referring to fig. 9, in some embodiments, theinformation retrieving device 20 receives a loop logging policy through the network via the network module 230 (step S210), where the loop logging policy at least includes a start command and a storage capacity setting. Next, theprocessing unit 220 detects an idle amount of the storage space of the storage unit 240 (step S220).
Subsequently, a designated storage amount is calculated according to the storage capacity setting and the detected idle amount (step S230). Herein, in some embodiments, the storage capacity in the loop recording policy is set to a predetermined ratio, and the storage amount is designated as a predetermined ratio of the idle amount. For example, the storage capacity in the circular recording strategy is set to 40%, and when the storage space of thestorage unit 240 is idle for 8GB, the specified storage capacity is 3.2 GB.
After the specified storage amount is calculated, the specified storage amount is defined to be dedicated to the loop recording program (step S240) and a startup instruction is executed to start execution of the loop recording program according to the startup instruction (step S250).
In some embodiments, the activation command of steps S156 and S250 includes an activation (or deactivation) criterion, and when the activation criterion is triggered, theinformation capture device 20 starts to execute the loop recording procedure. In some implementations, theinformation capture device 20 includes a state sensor that detects a particular state as triggering the activation criteria. For example, the state sensor may detect the sound of the gun when the gun is fired by sound sampling, and when the sound of the gun is detected, the state sensor is taken as the triggering start criterion, and theinformation capturing device 20 starts to execute the loop recording procedure. For another example, the status sensor may be triggered by sensing a distance, and when the information capturing device carried by the medical staff approaches the ambulance to perform the rescue service, theinformation capturing device 20 starts to perform the loop recording procedure. That is, theinformation capturing device 20 is normally in a loop recording mode, a sleep mode or a non-operation mode, and is activated when an event occurs, so as to reduce the power consumption of theinformation capturing device 20 and prolong the service life thereof.
In some embodiments, the loop recording process performed in steps S156 and S250 includes capturing the ambient environment by theimage capturing component 210 of theinformation capturing device 20 to generate an ambient image stream representing the ambient environment (step S260) and storing the ambient image stream in the storage space with the specified storage capacity, and overwriting the earliest ambient image stream in the storage space with the specified storage capacity (step S270) when the storage space with the specified storage capacity is full.
It should be noted that, although the steps are described in sequence, the sequence is not a limitation of the present invention, and persons skilled in the art should understand that the execution sequence of the partial steps can be performed simultaneously or exchanged in sequence where reasonable.
The technical disclosure of the present invention is described in the above-mentioned preferred embodiments, but the present invention is not limited thereto, and those skilled in the art should understand that the present invention can be modified and modified without departing from the spirit of the present invention, and therefore, the scope of the present invention should be determined by the appended claims.