Dewarped views

Axis 360°/180° cameras, such as AXIS M3007–PV network camera, have multiple view modes. In addition to the 360° overview, the cameras have several dewarped views: 180° panoramic views, quad views and view areas with PTZ functionality.

The view modes are similar to view areas which are available in other Axis products, but there are some differences. Each view mode has its own set of valid resolutions and rotations. When requesting a video stream from one of the dewarped views, a valid resolution must be included in the request. It is not possible to use the same resolution for all dewarped views.

Before using dewarped views, the camera orientation should be configured. Available view modes differ depending on if the camera is mounted on a wall, in the ceiling or on a desk.

View modes

The view modes are defined by parameters in the dynamic group Image.I<#> where # is the view mode number starting from 0. The table below lists the available view modes.

#NameAccess(1)Description
0Overviewread/writeA non-dewarped 360° view.
1Panoramaread/writeOne dewarped 180° panoramic view.
2Double Panoramaread/writeTwo dewarped 180° panoramic views.
Note that this option isn’t available if the mounting position ‘Wall’ has been selected (ImageSource.I0.CameraTiltOrientation=0).
3Quad Viewread/writeFour dewarped 90° views, one for each direction.
Note that this option isn’t available if the mounting position ‘Wall’ has been selected (ImageSource.I0.CameraTiltOrientation=0).
4View Area 1read/writeA dewarped 90° view with PTZ (pan/tilt/zoom) functionality.
5View Area 2read/writeA dewarped 90° view with PTZ (pan/tilt/zoom) functionality.
6View Area 3read/writeA dewarped 90° view with PTZ (pan/tilt/zoom) functionality.
7View Area 4read/writeA dewarped 90° view with PTZ (pan/tilt/zoom) functionality.
8Panorama Corner Leftread/writeZoomed in, 180° wide angle view of the outermost left corner.
Note that this option isn’t available if the mounting position ‘Wall’ has been selected (ImageSource.I0.CameraTiltOrientation=0).
9Panorama Corner Rightread/writeZoomed in, 180° wide angle view of the outermost right corner.
Note that this option isn’t available if the mounting position ‘Wall’ has been selected (ImageSource.I0.CameraTiltOrientation=0).
10Double Panorama Cornerread/writeA split 180° panoramic view of the outermost corners of the camera view.
Note that this option isn’t available if the mounting position ‘Wall’ has been selected (ImageSource.I0.CameraTiltOrientation=0).
11Corridorread/writeSide-by-side view of two different preset view areas.
Note that this option isn’t available if the mounting position ‘Wall’ has been selected (ImageSource.I0.CameraTiltOrientation=0).
  1. User access rights for parameter Image.I<#>.Name.

Setup

This section describes how to set up the camera to use view modes and dewarped views.

  1. Check if the Axis product supports dewarping. See Identification.

  2. Set camera orientation. See Set camera orientation.

  3. Enable and configure views. See Enable and configure views.

Identification

To check if the Axis product supports dewarping, use the Property.Image.Dewarp parameter.

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=Properties.Image.Dewarp
Response example:
Properties.Image.Dewarp=yes

The parameter has the following values:

ParameterValid valuesDescription
Properties.Image.Dewarpyes
no
yes = Dewarping is supported.
no = Dewarping is not supported.

If the parameter does not exist, dewarping is not supported.

Set camera orientation

When using dewarped views, the camera orientation should be configured. The camera orientation setting affects how view modes and the pan/tilt/zoom functionality are working.

To set the camera orientation, use:

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=ImageSource.I0.CameraTiltOrientation
ParameterValid valuesDescription
ImageSource.I0.CameraTiltOrientation-90
0
90
-90 = Select this option if the camera is mounted in the ceiling.
0 = Select this option if the camera is mounted on a wall.
90 = Select this option if the camera is mounted on a desk or similar.
Note
Some dewarped views are not available if ImageSource.I0.CameraTiltOrientation=0, that is, if the camera is mounted on a wall. See table in section View modes.

Enable and configure views

View modes are handled similar to view areas in other Axis products and are defined by parameters in the dynamic group Image.I<#> where # is the view mode number starting from 0.

To retrieve the total number of available views, use parameter Properties.Image.NbrOfViews.

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=Properties.Image.NbrOfViews
Response:
<int>

To check if a view is available and enabled use Image.I<#>.Enabled.

ParameterValid valuesDescription
Image.I<#>.Enabledyes
no
yes = The view is enabled
no = The view is disabled.

An enabled view can be configured in the same way as view areas in other Axis products. Use PTZ commands to move and change direction of the view modes that support PTZ. PTZ can be disabled if users should not be able to modify views after initial setup.

Using dewarped views

This section describes how to use dewarped views. Since each view mode has its own set of resolutions and rotations, the valid resolutions and rotations should be retrieved before requesting a video stream. It is not possible to use the same resolution for all view modes.

If the request contains an invalid resolution or if the view is disabled, the response is: HTTP Error: 400 Bad Request.

Check valid resolutions and rotations

To check resolutions and rotations supported by the Axis product, use the following parameters:

ParameterValid valuesDescription
Properties.Image.Resolutions<int>x<int>[,<int>x<int>[,...]]A list of resolutions supported by the Axis product.
Properties.Image.Rotation<int>[,<int>[,...]]A list of rotations supported by the Axis product.
Unit: degrees

To check the resolutions and rotations available for view mode #, use the following parameters:

ParameterValid valuesDescription
Properties.Image.I<#>.Resolution<int>x<int>[,<int>x<int>[,...]]A list of resolutions supported by view mode <#>.
Properties.Image.I<#>.Rotation<int>[,<int>[,...]]A list of rotations supported by view mode <#>.
Unit: degrees

To check the name of view mode <#>, use the following parameter:

ParameterValid valuesDescription
Image.I<#>.NamestringThe name of view mode #.

For a list of view mode names, see View modes.

To retrieve supported resolutions for view mode Overview (that is, view mode 0), use:

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=Properties.Image.I0
Response:
root.Properties.Image.I0.Rotation=0,180
root.Properties.Image.I0.Resolution=2592x1944,2048x1536,1600x1200,1280x960,1024x768,
800x600,640x480,480x360,320x240,240x180,160x120

Request a stream

Video streams and images (snapshots) from the dewarped views can be requested using the HTTP API or the RTSP API. To request a stream or image from a particular view mode, the camera argument must be specified. Set camera to the view mode group number plus 1. A valid resolution must be included in the request.

For more information about video requests, see the Video streaming API available at www.axis.com/vapix

Request a motion JPEG stream

The example outlined in this section shows how to request a Motion JPEG stream from view mode Panorama using the HTTP API.

Start by checking the group number:

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=Image.*.Name
Response example:
root.Image.I0.Name=Overview
root.Image.I1.Name=Panorama
root.Image.I2.Name=Double Panorama
root.Image.I3.Name=Quad View
root.Image.I4.Name=View Area 1
root.Image.I5.Name=View Area 2
root.Image.I6.Name=View Area 3
root.Image.I7.Name=View Area 4
root.Image.I8.Name=Panorama Corner Left
root.Image.I9.Name=Panorama Corner Right
root.Image.I10.Name=Double Panorama Corner
root.Image.I11.Name=Corridor

The response shows that the group number is 1.

Check that the view is enabled:

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=Image.I1.Enabled

Retrieve the available resolutions:

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=Properties.Image.I1.Resolution
Response
Properties.Image.I1.Resolution=1600x600,1280x480,960x360,640x240,480x180,320x120

Request a Motion JPEG stream using one of the valid resolutions from the response above. Since the group number is 1, the camera argument should be set to 2.

Request:
http://<ip>/axis-cgi/mjpg/video.cgi?camera=2&resolution=1600x600

Request an H.264 stream

The example outlined in this section shows how to request an H.264 stream from view mode Quad View using the RTSP API.

Start by checking the group number:

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=Image.*.Name
Response example:
root.Image.I0.Name=Overview
root.Image.I1.Name=Panorama
root.Image.I2.Name=Double Panorama
root.Image.I3.Name=Quad View
root.Image.I4.Name=View Area 1
root.Image.I5.Name=View Area 2
root.Image.I6.Name=View Area 3
root.Image.I7.Name=View Area 4
root.Image.I8.Name=Panorama Corner Left
root.Image.I9.Name=Panorama Corner Right
root.Image.I10.Name=Double Panorama Corner
root.Image.I11.Name=Corridor

The response shows that the group number is 3.

Check that the view is enabled:

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=Image.I3.Enabled

Retrieve the available resolutions:

Request:
http://<ip>/axis-cgi/param.cgi?action=list&group=Properties.Image.I3.Resolution
Response:
Properties.Image.I3.Resolution=1600x1200,1280x960,1024x768,800x600,640x480,480x360,
320x240,240x180,160x120

Request an H.264 stream using one of the valid resolutions from the response above. Since the group number is 3, the camera argument should be set to 4.

Request:
PLAY rtsp://<ip>/axis-media/media.amp
?videocodec=h264&camera=4&resolution=800x600 RTSP/1.0
CSeq: 4
User-Agent: Axis AMC
Session: 12345678