gusimplewhiteboard
wb_vision_control_status.h
Go to the documentation of this file.
1/*
2 * file wb_vision_control_status.h
3 *
4 * This file was generated by classgenerator from vision_control_status.gen.
5 * DO NOT CHANGE MANUALLY!
6 *
7 * Copyright © 2021 Eugene Gilmore. All rights reserved.
8 *
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions
11 * are met:
12 *
13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer.
15 *
16 * 2. Redistributions in binary form must reproduce the above
17 * copyright notice, this list of conditions and the following
18 * disclaimer in the documentation and/or other materials
19 * provided with the distribution.
20 *
21 * 3. All advertising materials mentioning features or use of this
22 * software must display the following acknowledgement:
23 *
24 * This product includes software developed by Eugene Gilmore.
25 *
26 * 4. Neither the name of the author nor the names of contributors
27 * may be used to endorse or promote products derived from this
28 * software without specific prior written permission.
29 *
30 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
32 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
33 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
34 * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
35 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
36 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
37 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
38 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
39 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
40 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
41 *
42 * -----------------------------------------------------------------------
43 * This program is free software; you can redistribute it and/or
44 * modify it under the above terms or under the terms of the GNU
45 * General Public License as published by the Free Software Foundation;
46 * either version 2 of the License, or (at your option) any later version.
47 *
48 * This program is distributed in the hope that it will be useful,
49 * but WITHOUT ANY WARRANTY; without even the implied warranty of
50 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
51 * GNU General Public License for more details.
52 *
53 * You should have received a copy of the GNU General Public License
54 * along with this program; if not, see http://www.gnu.org/licenses/
55 * or write to the Free Software Foundation, Inc., 51 Franklin Street,
56 * Fifth Floor, Boston, MA 02110-1301, USA.
57 *
58 */
59
60#ifndef wb_vision_control_status_h
61#define wb_vision_control_status_h
62
63#pragma clang diagnostic push
64#pragma clang diagnostic ignored "-Wreserved-id-macro"
65
66#ifdef __linux
67# ifndef _POSIX_SOURCE
68# define _POSIX_SOURCE 200112L
69# endif
70#endif
71#ifndef _XOPEN_SOURCE
72# define _XOPEN_SOURCE 700
73#endif
74#ifdef __APPLE__
75# ifndef _DARWIN_C_SOURCE
76# define _DARWIN_C_SOURCE 200112L
77# endif
78# ifndef __DARWIN_C_LEVEL
79# define __DARWIN_C_LEVEL 200112L
80# endif
81#endif
82
83#pragma clang diagnostic pop
84
85#include <gu_util.h>
86#include <stdint.h>
87
88#include <sys/time.h>
97 SVGA
98};
99
104 Top = 0,
108
118 HTWK
120
129
137 None
139
147 BallOnly
149
150#define VISION_CONTROL_STATUS_GENERATED
151#define VISION_CONTROL_STATUS_C_STRUCT wb_vision_control_status
152#define VISION_CONTROL_STATUS_NUMBER_OF_VARIABLES 19
153
154#ifdef WHITEBOARD_POSTER_STRING_CONVERSION
155#define VISION_CONTROL_STATUS_DESC_BUFFER_SIZE 4555
156#define VISION_CONTROL_STATUS_TO_STRING_BUFFER_SIZE 4291
157#endif
158
159#ifdef __cplusplus
160extern "C" {
161#endif
162
167{
168
173
178
183
188
193
198
203
208
213
218
223
228
233
238
243
248
252 uint64_t frameNumber;
253
258
262 struct timeval imageTime;
263
264};
265
266#ifdef WHITEBOARD_POSTER_STRING_CONVERSION
267
271const char* wb_vision_control_status_description(const struct wb_vision_control_status* self, char* descString, size_t bufferSize);
272
276const char* wb_vision_control_status_to_string(const struct wb_vision_control_status* self, char* toString, size_t bufferSize);
277
282
283#endif
284
285/*#ifdef WHITEBOARD_SERIALISATION*/
286
291
296
297/*#endif /// WHITEBOARD_SERIALISATION*/
298
299#ifdef __cplusplus
300}
301#endif
302
303#endif
WHITEBOARD_POSTER_STRING_CONVERSION.
enum NeuralNetworkType networkBottom
neural network to run on bottom camera
float confidence
Confidence threshold for the neural net.
int frameRate
The current framerate that the pipeline is running at.
int jpegStreamQuality
The quality to compress jpeg images at for streaming can be between 0 and 100.
enum VisionCamera selectedCamera
Which camera to use.
bool imageInput
Use /tmp/test.ai2 as pipeline image rather then camera if true.
struct timeval imageTime
the time that the image was taken that this status message refers to
bool runPipelineOnce
run the pipeline one time only if true
uint64_t frameNumber
The current frame number reported by guvison.
enum SaveFileType saveImage
Whether to save the image used in the next iteration of the pipeline to file.
int jpegStreamStride
The stride to use when streaming jpeg images.
char colourCalibration[10]
the DLC file to use for segmentation, searched in $HOME/data/ with the .dlc extension
int chooseCamera
Choose which camera to run on (0-Top, 1-Bottom, 2-Both)
bool saveClassifiedImage
Whether to save the classified version of the image used in the next iteration of the pipeline to fil...
enum NamedPipeline pipeline
vision pipeline to be run
enum NeuralNetworkType networkTop
neural network to run on top camera
enum Resolutions cameraResolution
Resolution that the camera should caputre images at.
bool pipelineRunning
Whether the pipeline is running or not.
enum StreamingType streamingSource
The type of streaming to be used.
const char * wb_vision_control_status_to_string(const struct wb_vision_control_status *self, char *toString, size_t bufferSize)
Convert to a string.
size_t wb_vision_control_status_from_network_serialised(const char *src, struct wb_vision_control_status *dst)
Network stream deserialisation.
struct wb_vision_control_status * wb_vision_control_status_from_string(struct wb_vision_control_status *self, const char *str)
Convert from a string.
SaveFileType
List of file types that vision can save images as.
@ JPG
Compressed JPEG.
@ AI3
Raw YUV422 Image, with JSON image info blob.
@ AI2
Raw YUV422 Image.
NamedPipeline
Enum listing available vision pipelines.
@ Streaming
Pipeline that just streams images.
@ OpenChallenge
2013 Open Challange Pipeline
@ HTWK
Pipeline that runs htwk's image algorithms and post soccer object info to mipal whiteboard.
@ OpenCVFaces
Pipeline to recognise faces.
@ Soccer
Soccer Pipeline.
@ Neural_Network
Pipeline to rec objects with a nn.
size_t wb_vision_control_status_to_network_serialised(const struct wb_vision_control_status *self, char *dst)
WHITEBOARD_POSTER_STRING_CONVERSION.
Resolutions
Resolutions Supported by Vision.
@ QVGA
320 x 240
@ SVGA
800 x 600
@ VGA
640 x 480
@ QQVGA
160 x 120
@ HD_4VGA
1280x960
StreamingType
Streaming modes available in vision.
@ Recognized
Image showing only objects that have been recognised NYI.
@ Classified
Images that has been segmented into recognised colours.
@ Normal
Images straight from camera.
const char * wb_vision_control_status_description(const struct wb_vision_control_status *self, char *descString, size_t bufferSize)
Convert to a description string.
VisionCamera
Enum of available camera's that can be used by vision.
@ Bottom
Bottom Camera on the nao.
@ Top
Top Camera on the nao.
@ NUM_VISION_CAMERAS
Number of cameras used in vision.
NeuralNetworkType
List of neural network architectures that vision can run.
@ v2
Current default (separable convolutions)
@ BallOnly
PB_FCN v2 binary classifier.
@ Vanilla
PB_FCN.
@ VGANet
PB_FCN on VGA resolution.