Abstract:
Embodiments of the present invention relate to the field of video monitoring and provide a method, an apparatus, and a system for acquiring a visual angle, so as to acquire an accurate visual angle value. The method for acquiring a visual angle includes: receiving, by a central processing unit CPU of a camera, angle information that is sent by an accelerometer sensor arranged on the camera; converting, by the CPU, the received angle information to a visual angle value; sending, by the CPU, the visual angle value to a server, so that a client receives the visual angle value forwarded by the server. The embodiments of the present invention are applicable to a video monitoring scenario.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a continuation of International Application No. PCT/CN2012/084061, filed on Nov. 5, 2012, which claims priority to Chinese Patent Application No. 201110350441.0, filed on Nov. 8, 2011, both of which are hereby incorporated by reference in their entireties. 
     
    
     TECHNICAL FIELD 
       [0002]    The present invention relates to the field of video monitoring, and in particular, to a method, a camera, a server, and a system for acquiring a visual angle. 
       BACKGROUND 
       [0003]    A common video monitoring network is shown in  FIG. 1 , and the video monitoring network includes a camera, a server, a client, and an IP network for interaction between the three. The camera mainly performs collection and coding of audio and video data, and the like. The server mainly performs camera device management, client management, service process management, data storage, and the like. The client mainly provides an operation and management entrance for video services. 
         [0004]    However, in an existing solution, a user can only estimate a visual angle of the camera but not able to acquire accurate information about the visual angle. 
       SUMMARY 
       [0005]    Embodiments of the present invention provide a method, a camera, a server, and a system for acquiring a visual angle, so as to acquire an accurate visual angle value. 
         [0006]    The embodiments of the present invention use the following technical solutions to attain the foregoing objectives: 
         [0007]    In one aspect, a method for acquiring a visual angle is provided, including: 
         [0008]    receiving, by a central processing unit CPU of a camera, angle information that is sent by an accelerometer sensor arranged on the camera; 
         [0009]    converting, by the CPU, the received angle information to a visual angle value; and 
         [0010]    sending, by the CPU, the visual angle value to a server, so that a client receives the visual angle value forwarded by the server. 
         [0011]    In one aspect, a camera is provided, including: a central processing unit CPU, a pan-tilt-zoom control board, and an accelerometer sensor, where: 
         [0012]    the CPU is configured to receive angle information that is sent by the accelerometer sensor arranged on the camera; convert the received angle information to a visual angle value; and send the visual angle value to a server, so that a client receives the visual angle value forwarded by the server. 
         [0013]    In still another aspect, an embodiment of the present invention provides a system for acquiring a visual angle, including: a camera, a server, and a client, where the camera is the foregoing camera, the server is the foregoing server, and the client is configured to receive a visual angle value sent by the server. 
         [0014]    According to the method, the camera, the server, and the system for acquiring a visual angle that are provided in the embodiments of the present invention, angle information that is sent by an accelerometer sensor arranged on a camera is converted to a visual angle value, the visual angle value is sent to a server, and then the visual angle value is sent to a client by the server. In this way, the visual angle value can be displayed on the client. Compared with a condition of estimating the visual angle in the prior art, the visual angle value displayed on the client is more accurate in the embodiments of the present invention. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0015]    To illustrate the technical solutions in the embodiments of the present invention or in the prior art more clearly, the following briefly introduces the accompanying drawings required for describing the embodiments or the prior art. Apparently, the accompanying drawings in the following description show merely some embodiments of the present invention, and a person of ordinary skill in the art may still derive other drawings from these accompanying drawings without creative efforts. 
           [0016]      FIG. 1  is a video monitoring system in the prior art; 
           [0017]      FIG. 2  is a flowchart of a method for acquiring a visual angle according to Embodiment 1 of the present invention; 
           [0018]      FIG. 3  is a signaling interaction diagram of a method for acquiring a visual angle according to Embodiment 2 of the present invention; and 
           [0019]      FIG. 4  is an effect diagram of a longitudinal visual range. 
       
    
    
     DETAILED DESCRIPTION 
       [0020]    The following clearly describes the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are merely a part rather than all of the embodiments of the present invention. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention. 
       Embodiment 1 
       [0021]    In one aspect, as shown in  FIG. 2 , the embodiment of the present invention provides a method for acquiring a visual angle, including: 
         [0022]      201 . A central processing unit CPU of a camera receives angle information that is sent by an accelerometer sensor arranged on the camera. 
         [0023]      202 . The CPU converts the received angle information to a visual angle value. 
         [0024]      203 . The CPU sends the visual angle value to a server, so that a client receives the visual angle value forwarded by the server. 
         [0025]    According to the method for acquiring a visual angle that is provided in the embodiment of the present invention, angle information that is sent by an accelerometer sensor arranged on a camera is converted to a visual angle value, the visual angle value is sent to a server, and then the visual angle value is sent to a client by the server. In this way, the current visual angle value can be displayed on the client. Compared with a condition of estimating the visual angle in the prior art, the visual angle value displayed on the client is more accurate in the embodiment of the present invention. 
       Embodiment 2 
       [0026]    As shown in  FIG. 3 , a signaling interaction process of acquiring a visual angle is provided in the embodiment of the present invention, including: 
         [0027]      301 . A central processing unit CPU of a camera sends a command requesting angle information to an accelerometer sensor arranged on the camera. 
         [0028]    In all embodiments of the present invention, the accelerometer sensor arranged on the camera is capable of measuring the angle information of the camera. The accelerometer sensor may be a three-axis accelerometer sensor or a two-axis accelerometer sensor. The three-axis accelerometer sensor may measure three-dimensional angle information (an X-Y-Z three-dimensional angle value) or two-dimensional angle information (an X-Y two-dimensional angle value, a Y-Z two-dimensional angle value, or an X-Z two-dimensional angle value). The two-axis accelerometer sensor may measure a two-dimensional angle information (an X-Y two-dimensional angle value, a Y-Z two-dimensional angle value, or an X-Z two-dimensional angle value). During a specific using process, an appropriate accelerometer sensor should be selected in consideration of factors such as a visual effect and a production cost. In the embodiment of the present invention, the three-dimensional angle information (the X-Y-Z three-dimensional angle value) measured by the three-axis accelerometer sensor is used as an example of the angle information for description. 
         [0029]      302 . The accelerometer sensor sends the three-dimensional angle information (the X-Y-Z three-dimensional angle value) to the CPU. 
         [0030]    When it is the first time the CPU of the camera reports the visual angle value to the server, step  304  is directly performed; when it is not the first time the CPU of the camera reports the visual angle value to the server, step  303  needs to be performed first. 
         [0031]      303 . The CPU cyclically determines whether the three-dimensional angle information (the X-Y-Z three-dimensional angle value) received this time is consistent with that received last time; and if the angle information received this time is inconsistent with that received last time, performs a next step  304 . 
         [0032]    That is, the CPU cyclically performs steps  301  and  302  until after step  303 , it determines that the angle information received this time (any time except for the first time) is inconsistent with that received last time, and continues to perform the following step by using the angle information received this time. 
         [0033]      304 . The CPU converts the received three-dimensional angle information (the X-Y-Z three-dimensional angle value) to a three-dimensional visual angle value (an X-Y-Z visual angle value). During the conversion process, the CPU performs conversion between the angle information and the visual angle value by using a predetermined algorithm. 
         [0034]      305 . The server sends a command of adding a camera to the CPU. It should be noted that the number of cameras to be added by the server is not limited in the embodiment of the present invention. The server may send the command of adding a camera to CPUs of multiple cameras, so that a client is capable of monitoring visual angle values of the multiple cameras. In an interaction process in this embodiment, only an interaction process of the server and one camera is described. 
         [0035]      306 . The camera establishes a connection with the server and returns a response to show adding of a device is completed. 
         [0036]      307 . The CPU sends the three-dimensional visual angle value (the X-Y-Z visual angle value) to the server. In the embodiment of the present invention, a process where the CPU sends the three-dimensional visual angle value (the X-Y-Z visual angle value) to the server may be as follows: The CPU actively reports the three-dimensional visual angle value, that is, the CPU actively performs the foregoing steps  301 - 307 , for example, when a camera is added to the server, the CPU of the camera starts to actively report the three-dimensional visual angle value or the CPU sends the visual angle value to the server according to request information of the server, that is, the CPU passively sends the three-dimensional visual angle value to the server, for example, after receiving the request information of the client forwarded by the server, the CPU performs steps  301 - 307  to send the three-dimensional visual angle value to the server. 
         [0037]      308 . The server stores the three-dimensional visual angle value (the X-Y-Z visual angle value). The three-dimensional visual angle value is stored by the server. In this way, other clients may share the three-dimensional visual angle value, so that a visual range corresponding to the three-dimensional visual angle value can be monitored on other clients. 
         [0038]      309 . The server sends the visual angle value to the client. In the embodiment of the present invention, a process where the server sends the three-dimensional visual angle value (the X-Y-Z visual angle value) to the client may be as follows: The server actively reports the three-dimensional visual angle value to the client; or the server sends the three-dimensional visual angle value to the client according to request information sent by the client, that is, the server passively sends the three-dimensional visual angle value to the client. 
         [0039]      310 . The client displays the three-dimensional visual angle value, calculates a current visual range according to the three-dimensional visual angle value (the X-Y-Z visual angle value), and displays the current visual range. For example, as shown in  FIG. 4 , “a” is horizontal line a, “b” is a visual midline, in a condition that installation height H, a horizontal visual angle value X, and camera lens parameters of a camera are known, a vertical visual range S of the camera may be learned by using a predetermined algorithm, where the predetermined algorithm may be multiple algorithms and is easily obtained according to a geometrical relationship, and therefore no further details are provided in the embodiment of the present invention. 
         [0040]    The current precise visual angle value and visual range of the camera may be learned on the client by using steps  301 - 310 . Further, if an operator needs to adjust the camera to a specified position by performing a remote operation, the following steps may be performed for implementation. 
         [0041]      311 . The client receives a specified three-dimensional visual angle value (an X-Y-Z visual angle value), where the specified three-dimensional visual angle value is generally input by the operator by using a controlling interface on the client. 
         [0042]      312 . The client sends the specified three-dimensional visual angle value (the X-Y-Z visual angle value) to the server. 
         [0043]      313 . The server sends the specified three-dimensional visual angle value (the X-Y-Z visual angle value) to the CPU. 
         [0044]      314 . The CPU converts the specified three-dimensional visual angle value (the X-Y-Z visual angle value) to a pan-tilt-zoom rotation angle. 
         [0045]      315 . The CPU sends the pan-tilt-zoom rotation angle to a pan-tilt-zoom control board. 
         [0046]      316 . The pan-tilt-zoom control board controls the camera to rotate to a specified angle. 
         [0047]      317 . The pan-tilt-zoom control board responds to the CPU that processing is completed. 
         [0048]    After steps  311 - 317 , the camera is precisely adjusted to the specified angle according to the visual angle value specified by the operator. In this way, the required visual angle value is implemented on the client by using the remote operation. 
         [0049]    According to the method for acquiring a visual angle that is provided in the embodiment of the present invention, angle information that is sent by an accelerometer sensor arranged on a camera is converted to a visual angle value, the visual angle value is sent to a server, and then the visual angle value is sent to a client by the server. In this way, a precise visual angle value can be displayed on the client, and a visual range can be calculated according to the visual angle value. Compared with a condition of estimating the visual angle in the prior art, the visual angle value and the visual range that are displayed on the client are more precise in the embodiment of the present invention. 
       Embodiment 3 
       [0050]    The embodiment of the present invention provides a camera, including: a central processing unit CPU, a pan-tilt-zoom control board, and an accelerometer sensor. 
         [0051]    The CPU is configured to receive angle information that is sent by the accelerometer sensor arranged on the camera; convert the received angle information to a visual angle value; and send the visual angle value to a server, so that a client receives the visual angle value forwarded by the server. The accelerometer sensor may be a three-axis accelerometer sensor or a two-axis accelerometer sensor. The three-axis accelerometer sensor may measure three-dimensional angle information (an X-Y-Z three-dimensional angle value) or two-dimensional angle information (an X-Y two-dimensional angle value, a Y-Z two-dimensional angle value, or an X-Z two-dimensional angle value). The two-axis accelerometer sensor may measure a two-dimensional angle information (an X-Y two-dimensional angle value, a Y-Z two-dimensional angle value, or an X-Z two-dimensional angle value). During a specific using process, an appropriate accelerometer sensor should be selected in consideration of factors such as a visual effect and a production cost. In the embodiment of the present invention, a process where the CPU sends the visual angle value to the server may be as follows: The CPU actively reports the visual angle value, for example, when a camera is added to the server, the CPU of the camera starts to report the visual angle value to the server; or the CPU sends the visual angle value to the server according to request information of the server, that is, the CPU passively sends the visual angle value to the server, for example, the CPU sends the visual angle value to the server after receiving the request information of the client forwarded by the server. 
         [0052]    Further, the CPU is further configured to cyclically determine whether angle information received this time is consistent with that received last time, and if the angle information received this time is inconsistent with that received last time, perform a next step. It should be noted that a cyclic determination function of the CPU is not used when it is the first time the CPU of the camera reports the visual angle value to the server; and the cyclic determination function of the CPU needs to be used when it is not the first time the CPU of the camera reports the visual angle value to the server. 
         [0053]    Further, the CPU is further configured to receive a specified visual angle value sent by the server; convert the specified visual angle value to a pan-tilt-zoom rotation angle; and send the pan-tilt-zoom rotation angle to the pan-tilt-zoom control board, so that the pan-tilt-zoom control board controls the camera to rotate to a specified angle. 
         [0054]    The embodiment of the present invention further provides a server, where the server is configured to receive a visual angle value sent by a central processing unit CPU of a camera and send the visual angle value to a client. In the embodiment of the present invention, a process where the server sends the visual angle value to the client may be as follows: The server performs active reporting; or the server sends the visual angle value to the client according to request information sent by the client, that is, the server passively sends the visual angle value to the client. 
         [0055]    Further, the server is further configured to store the visual angle value. The visual angle value is stored by the server. In this way, other clients may share the visual angle value so that a visual range corresponding to the visual angle value can be monitored on other clients. The server is further configured to receive a specified visual angle value sent by the client and send the specified visual angle value to the CPU, so that the CPU rotates the camera to a specified angle according to the specified visual angle value. 
         [0056]    The embodiment of the present invention further provides a system for acquiring a visual angle, including: a camera, a server, and a client, where the camera is the foregoing camera, the server is the foregoing server, and the client is configured to receive a visual angle value sent by the server. 
         [0057]    According to the camera, the server, and the system for acquiring a visual angle that are provided in the embodiment of the present invention, angle information that is sent by an accelerometer sensor arranged on a camera is converted to a visual angle value, the visual angle value is sent to a server, and then the visual angle value is sent to a client by the server. In this way, the current visual angle value can be displayed on the client, and a visual range can be calculated according to the visual angle value. Compared with a condition of estimating the visual angle in the prior art, the visual angle value and the visual range that are displayed on the client are more precise in the embodiment of the present invention. 
         [0058]    A person of ordinary skill in the art may understand that, all or a part of the steps of the foregoing method embodiments may be implemented by a program instructing relevant hardware. The foregoing programs may be stored in a computer readable storage medium. When the program runs, the foregoing steps included in the method embodiments are performed. The foregoing storage medium includes various mediums capable of storing program codes, such as a ROM, a RAM, a magnetic disk or an optical disk. 
         [0059]    The foregoing descriptions are merely specific embodiments of the present invention, but are not intended to limit the protection scope of the present invention. Any variation or replacement readily figured out by a person skilled in the art within the technical scope disclosed in the present invention shall fall within the protection scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.