Thermal visual fusion configuration
This API is based on the Device Configuration API framework. For guidance on how to use these APIs, refer to the Device Configuration APIs section in the VAPIX Library.
Overview
The VAPIX® Thermal visual fusion configuration API lets you control the thermal visual fusion view. The view combines two streams: one base stream and one overlaid stream. The camera has a set of resolutions for this view, a fixed scale that is unique to each camera variant, and a default factory alignment setting.
You can choose which source to use for the base stream, set the transparency of the overlaid stream, and control the xy alignment between the two streams. You can also reset the alignment to its default value. The view is available on channel 3 and is not customizable.
In this API, you can control three settings:
- Fusion mode (
GET,SET): choose which source to use for the base stream. - Alignment (
GET,SET, update, reset): control thexyalignment between the two streams. - Transparency (
GET,SET): control the transparency of the overlaid stream.
Use cases
Read fusion mode
Use this example to get the current thermal visual fusion mode.
GET /config/rest/thermal-visual-fusion/v1/fusionMode HTTP/1.1
HOST: my-device
Content-Type: application/json
HTTP/1.1 200 OK
Content-Type: application/json
{
"status": "success",
"data": "VISUAL"
}
Change fusion mode
Switch the fusion mode from visual mode (thermal on top of visual stream, 16:9 aspect ratio) to thermal mode (visual on top of thermal, 4:3 aspect ratio).
PATCH /config/rest/thermal-visual-fusion/v1/fusionMode HTTP/1.1
HOST: my-device
Content-Type: application/json
{
"data": "VISUAL"
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"status": "success"
}
Update alignment setting
Use this example to update the thermal stream alignment against a visual stream by passing one of the following: MOVE_LEFT, MOVE_RIGHT, MOVE_UP, MOVE_DOWN.
- curl
- HTTP
curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/thermal-visual-fusion/v1/updateAlignment \
--data '{
"data": {
"fusionMoveAlignment": "MOVE_LEFT"
}
}'
POST /config/rest/thermal-visual-fusion/v1/updateAlignment HTTP/1.1
HOST: my-device
Content-Type: application/json
{
"data": {
"fusionMoveAlignment": "MOVE_LEFT"
}
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"status": "success"
}
Reset alignment setting
Use this example to reset the thermal stream alignment against a visual stream to its factory default value.
- curl
- HTTP
curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/thermal-visual-fusion/v1/resetAlignment \
--data '{
"data": {}
}'
POST /config/rest/thermal-visual-fusion/v1/resetAlignment HTTP/1.1
HOST: my-device
Content-Type: application/json
{
"data": {}
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"status": "success"
}
Read transparency setting
Use this example to get the current transparency of the overlaid stream. The transparency value can be set between 0.0 to 1.0, with 0.0 being fully transparent and 1.0 being fully opaque.
GET /config/rest/thermal-visual-fusion/v1/transparency HTTP/1.1
HOST: my-device
Content-Type: application/json
HTTP/1.1 200 OK
Content-Type: application/json
{
"status": "success",
"data": 0.5
}
Change transparency setting
Use this example to change the transparency of an overlaid stream.
PATCH /config/rest/thermal-visual-fusion/v1/transparency HTTP/1.1
HOST: my-device
Content-Type: application/json
{
"data": 0.5
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"status": "success"
}
API definition
Structure
thermal-visual-fusion.v1 (Root Entity)
├── alignment (Property)
├── fusionMode (Property)
├── transparency (Property)
├── resetAlignment (Action)
├── updateAlignment (Action)
Entities
thermal-visual-fusion.v1
- Description: Thermal Visual Fusion Root Entity
- Type: Singleton
- Operations
GET
- Attributes
- Dynamic Support: No
Properties
alignment
- Description: Alignment of the overlaid stream.
- Datatype: Alignment
- Operations
GET(Permissions: admin, viewer, operator)SET(Permissions: admin)
- Attributes
- Nullable: No
- Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
fusionMode
- Description: The mode of the thermal visual fusion.
- Datatype: FusionModeEnum
- Operations
GET(Permissions: admin, viewer, operator)SET(Permissions: admin)
- Attributes
- Nullable: No
- Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
transparency
- Description: Transparency of the overlaid stream.
- Datatype: Transparency
- Operations
GET(Permissions: admin, viewer, operator)SET(Permissions: admin)
- Attributes
- Nullable: No
- Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
Actions
resetAlignment
- Description: Reset the alignment to factory settings.
- Request Datatype: ResetAlignmentReq
- Response Datatype: ResetAlignmentResp
- Trigger Permissions: admin
- Attributes
- Dynamic Support: No
updateAlignment
- Description: Update alignment of the fusion stream.
- Request Datatype: UpdateAlignmentReq
- Response Datatype: UpdateAlignmentResp
- Trigger Permissions: admin
- Attributes
- Dynamic Support: No
Data types
AbsCoordinate
- Description: The coordinate used in absolute coordinates system. (-1.0, -1.0) is bottom left corner and (1.0, 1.0) is top right corner of the stream. (0.0, 0.0) is center of the stream.
- Type: number
- Minimum Value: -1
- Maximum Value: 1
Alignment
- Description: Distance between the center of the thermal stream and the center of visual stream. Any part of the overlaid stream that is outside the base stream will be cropped out. Use the
[-1..1]coordinate system. - Type: complex
- Fields
- x
- Description: x-axis part of the alignment.
- Type: AbsCoordinate
- Nullable: No / Gettable: Yes
- y
- Description: y-axis part of the alignment.
- Type: AbsCoordinate
- Nullable: No / Gettable: Yes
- x
FusionModeEnum
- Description: The base source for the fusion stream. Visual means that the fusion stream will use a visual stream as the base and overlay thermal stream on top. For Thermal mode, it is the other way around.
- Type: string
- Enum Values: "VISUAL", "THERMAL"
FusionMoveEnum
- Description: What movement to apply to the alignment in fusion.
- Type: string
- Enum Values:
MOVE_LEFT, MOVE_RIGHT, MOVE_UP, MOVE_DOWN
ResetAlignmentReq
- Description: Extensible type for the reset alignment request.
- Type: complex
- Fields
ResetAlignmentResp
- Description: Extensible type for the reset alignment response.
- Type: complex
- Fields
Transparency
- Description: Transparency value of the overlaid stream. 0.0 means that the stream is fully transparent and 1.0 means fully opaque.
- Type: number
- Minimum Value: 0
- Maximum Value: 1
UpdateAlignmentReq
- Description: Extensible type for the update alignment request.
- Type: complex
- Fields
- fusionMoveAlignment
- Description: What movement to apply to alignment in fusion.
- Type: FusionMoveEnum
- Nullable: No / Gettable: Yes
- fusionMoveAlignment
UpdateAlignmentResp
- Description: Extensible type for the update alignment response.
- Type: complex
- Fields