Machine Vision Camer
a SDK (C)
De
v
eloper Guide
Leg
al
In
f
ormaon
©
2022 Hangzhou Hikr
obot T
echnology Co., L
t
d. All righ
ts r
eser
v
ed.
This Documen
t
(her
einaer
r
e
f
err
ed t
o be "the Documen
t") is the pr
operty of Hangzhou Hikr
obot
Digit
al T
echnology Co., L
t
d. or its
a
lia
t
es
(her
einaer
r
e
f
err
ed t
o as "Hikr
obot"), and it c
annot be
r
epr
oduced, chang
ed, tr
ansla
t
ed, or dis
tribut
ed,
parally
or wholly
, b
y an
y means, without the
prior
wrien
permission of Hikr
obot. Unless other
wise e
xpr
essly s
t
a
t
ed her
ein, Hikr
obot does not
mak
e an
y
w
arr
anes,
guar
an
t
ees or
r
epr
esen
t
aons,
e
xpr
ess or implied, r
eg
ar
ding t
o the
Documen
t, an
y
in
f
ormaon
c
on
t
ained her
ein.
LE
GAL DISCLAIMER
T
O THE MAXIMUM EXTENT PERMIT
TED B
Y APPLICABLE LA
W
, THE DOCUMENT IS PR
O
VIDED "AS IS"
AND "WITH ALL F
A
UL
T
S AND ERR
OR
S". HIKR
OBO
T MAKE
S NO REPRE
SENT
A
TIONS OR W
ARRANTIE
S,
EXPRE
SS OR IMPLIED
, INCL
UDING BUT NO
T LIMITED T
O
, W
ARRANTIE
S OF MER
CHANT
ABILITY
,
FITNE
SS F
OR A P
AR
TICULAR PURPOSE OR NON-INFRINGEMENT
. IN NO EVENT WILL HIKR
OBO
T BE
LIABLE F
OR ANY SPE
CIAL
, C
ONSE
QUENTIAL
, INCIDENT
AL
, OR INDIRE
C
T D
AMA
GE
S, INCL
UDING,
AMONG O
THER
S, D
AMA
GE
S F
OR L
OSS OF BUSINE
SS PR
OFIT
S, BUSINE
SS INTERRUP
TION OR L
OSS
OF D
A
T
A
, C
ORRUP
TION OF S
Y
S
TEMS, OR L
OSS OF DOCUMENT
A
TION, WHETHER B
ASED ON BRE
A
CH
OF C
ONTRA
C
T
, T
OR
T (INCL
UDING NE
GLIGENCE), OR O
THER
WISE, IN C
ONNE
C
TION WITH THE USE
OF THE DOCUMENT
, EVEN IF HIKR
OBO
T HAS BEEN AD
VISED OF THE POSSIBILITY OF SUCH
D
AMA
GE
S OR L
OSS.
T
O THE MAXIMUM EXTENT PERMIT
TED B
Y APPLICABLE LA
W
, THE DOCUMENT IS PR
O
VIDED "AS IS"
AND "WITH ALL F
A
UL
T
S AND ERR
OR
S". OUR C
OMP
ANY MAKE
S NO REPRE
SENT
A
TIONS OR
W
ARRANTIE
S, EXPRE
SS OR IMPLIED
, INCL
UDING BUT NO
T LIMITED T
O
, W
ARRANTIE
S OF
MER
CHANT
ABILITY
, FITNE
SS F
OR A P
AR
TICULAR PURPOSE OR NON-INFRINGEMENT
. IN NO EVENT
WILL OUR C
OMP
ANY BE LIABLE F
OR ANY SPE
CIAL
, C
ONSE
QUENTIAL
, INCIDENT
AL
, OR INDIRE
C
T
D
AMA
GE
S, INCL
UDING, AMONG O
THER
S, D
AMA
GE
S F
OR L
OSS OF BUSINE
SS PR
OFIT
S, BUSINE
SS
INTERRUP
TION OR L
OSS OF D
A
T
A
, C
ORRUP
TION OF S
Y
S
TEMS, OR L
OSS OF DOCUMENT
A
TION,
WHETHER B
ASED ON BRE
A
CH OF C
ONTRA
C
T
, T
OR
T (INCL
UDING NE
GLIGENCE), OR O
THER
WISE, IN
C
ONNE
C
TION WITH THE USE OF THE DOCUMENT
, EVEN IF OUR C
OMP
ANY HAS BEEN AD
VISED OF
THE POSSIBILITY OF SUCH D
AMA
GE
S OR L
OSS.
Machine Vision Camer
a SDK (C) De
v
eloper Guide
i
Con
t
en
ts
Chap
t
er 1 Ov
er
vie
w
....................................................................................................................
1
1.1
In
tr
oducon
...........................................................................................................................
1
1.2 De
v
elopmen
t En
vir
onmen
t
....................................................................................................
1
1.3 Upda
t
e His
t
or
y .......................................................................................................................
2
1.4
Noce
.....................................................................................................................................
7
Chap
t
er 2 Connect De
vice
...........................................................................................................
9
Chap
t
er 3 Imag
e
Acquision
and Displa
y
..................................................................................
11
3.1 Ge
t Imag
e Dir
ectly
...............................................................................................................
11
3.2 Ge
t Imag
e in Callback
Funcon
............................................................................................
14
Chap
t
er 4 API R
e
f
er
ence
...........................................................................................................
18
4.1 Gener
al
................................................................................................................................
18
4.1.1
MV_CC_Ge
tSDKV
er
sion
..............................................................................................
18
4.1.2
MV_CC_EnumDe
vices
.................................................................................................
18
4.1.3
MV_CC_EnumDe
vicesEx
.............................................................................................
19
4.1.4
MV_CC_EnumDe
vicesEx2
...........................................................................................
20
4.1.5
MV_CC_IsDe
viceAccessible ........................................................................................
21
4.1.6
MV_CC_Se
tSDKLogP
a
th
..............................................................................................
23
4.1.7
MV_CC_Cr
ea
t
eHandle
................................................................................................
23
4.1.8
MV_CC_Cr
ea
t
eHandleWithoutLog
.............................................................................
24
4.1.9
MV_CC_Des
tr
o
yHandle
...............................................................................................
25
4.1.10 MV_CC_OpenDe
vice
.................................................................................................
25
4.1.11 MV_CC_CloseDe
vice
.................................................................................................
27
4.1.12 MV_CC_Ge
tDe
viceIn
f
o
..............................................................................................
27
4.1.13 MV_CC_Ge
tV
alidImag
eNum
.....................................................................................
28
4.2 P
ar
ame
t
er
Sengs
...............................................................................................................
28
4.2.1
MV_CC_Ge
tBoolV
alue
................................................................................................
28
Machine Vision Camer
a SDK (C) De
v
eloper Guide
ii
4.2.2 MV_CC_Se
tBoolV
alue
.................................................................................................
29
4.2.3 MV_CC_Ge
tEnumV
alue
..............................................................................................
30
4.2.4 MV_CC_Se
tEnumV
alue
...............................................................................................
31
4.2.5 MV_CC_Se
tEnumV
alueB
yString
..................................................................................
31
4.2.6 MV_CC_Ge
tEnumEn
tr
yS
ymbolic
................................................................................
32
4.2.7 MV_CC_Ge
tFloa
tV
alue
................................................................................................
33
4.2.8 MV_CC_Se
tFloa
tV
alue
................................................................................................
34
4.2.9 MV_CC_Ge
tIn
tV
alueEx
................................................................................................
35
4.2.10 MV_CC_Se
tIn
tV
alueEx
..............................................................................................
35
4.2.11 MV_CC_Ge
tStringV
alue
............................................................................................
36
4.2.12 MV_CC_Se
tStringV
alue
.............................................................................................
37
4.2.13 MV_CC_Se
tCommandV
alue
......................................................................................
37
4.2.14 MV_CC_R
eadMemor
y
..............................................................................................
38
4.2.15 MV_CC_W
rit
eMemor
y
..............................................................................................
39
4.3
Funconal
............................................................................................................................
40
4.3.1 Gener
al APIs
................................................................................................................
40
4.3.2 GigE APIs .....................................................................................................................
64
4.3.3 Camer
aLink Camer
a ....................................................................................................
74
4.3.4 GenTL APIs ..................................................................................................................
86
4.4 Imag
e
Acquision
................................................................................................................
89
4.4.1
MV_CC_ClearImag
eBu
er
..........................................................................................
89
4.4.2
MV_CC_Fr
eeImag
eBu
er
............................................................................................
90
4.4.3
MV_CC_Ge
tImag
eBu
er
.............................................................................................
91
4.4.4 MV_CC_Ge
tImag
eF
orBGR ...........................................................................................
92
4.4.5 MV_CC_Ge
tImag
eF
orR
GB
...........................................................................................
93
4.4.6 MV_CC_Ge
tOneFr
ameTimeout
..................................................................................
94
4.4.7 MV_CC_R
egis
t
erImag
eCallBackEx ..............................................................................
95
4.4.8 MV_CC_R
egis
t
erImag
eCallBackF
orBGR ......................................................................
96
Machine Vision Camer
a SDK (C) De
v
eloper Guide
iii
4.4.9 MV_CC_R
egis
t
erImag
eCallBackF
orR
GB
......................................................................
97
4.4.10 MV_CC_St
artGr
abbing
..............................................................................................
98
4.4.11 MV_CC_St
opGr
abbing
..............................................................................................
99
4.5 Imag
e Pr
ocessing
...............................................................................................................
100
4.5.1 MV_CC_Displa
yOneFr
ame
........................................................................................
100
4.5.2 MV_CC_Sa
v
eImag
eEx2 .............................................................................................
100
4.5.3 MV_CC_Con
v
ertPix
elT
ype
.........................................................................................
101
4.5.4 MV_CC_Se
tBa
y
erCv
tQuality
.....................................................................................
102
4.5.5 MV_CC_Se
tBa
y
erGammaV
alue .................................................................................
102
4.5.6 MV_CC_Se
tBa
y
erGammaP
ar
am
...............................................................................
103
4.5.7 MV_CC_Se
tBa
y
erCCMP
ar
am
....................................................................................
104
4.5.8 MV_CC_Se
tBa
y
erCCMP
ar
amEx .................................................................................
104
4.5.9 MV_CC_LSCCalib
.......................................................................................................
105
4.5.10 MV_CC_LSCCorr
ect
.................................................................................................
105
4.5.11 MV_CC_HB_Dec
ode
................................................................................................
106
4.5.12 MV_CC_R
ot
a
t
eImag
e ..............................................................................................
107
4.5.13 MV_CC_FlipImag
e
...................................................................................................
107
4.5.14 MV_CC_St
artR
ec
or
d
...............................................................................................
108
4.5.15 MV_CC_InputOneFr
ame
.........................................................................................
108
4.5.16 MV_CC_St
opR
ec
or
d
................................................................................................
109
4.5.17 MV_CC_Sa
v
eImag
eT
oFile
........................................................................................
109
4.5.18 MV_CC_Sa
v
eP
oin
tCloudDa
t
a
..................................................................................
110
4.5.19 MV_CC_Dr
a
wCir
cle
.................................................................................................
112
4.5.20 MV_CC_Dr
a
wLines
..................................................................................................
112
4.5.21 MV_CC_Dr
a
wR
ect ...................................................................................................
113
4.5.22 MV_CC_Imag
eCon
tr
as
t ...........................................................................................
113
4.5.23 MV_CC_R
ec
ons
tructImag
e .....................................................................................
114
4.5.24 MV_CC_Se
tBa
y
erFilt
erEnable
.................................................................................
114
Machine Vision Camer
a SDK (C) De
v
eloper Guide
iv
4.6 Adv
anced
Sengs
..............................................................................................................
115
4.6.1 Gener
al APIs
..............................................................................................................
115
4.6.2 GigE APIs ...................................................................................................................
116
4.6.3 U3V APIs ....................................................................................................................
118
4.7 Camer
a In
t
ernal APIs
.........................................................................................................
122
4.7.1 MV_CC_Ge
tUpgr
adePr
ocess
.....................................................................................
122
4.7.2 MV_CC_Loc
alUpgr
ade
..............................................................................................
123
4.7.3 MV_XML_Ge
tGenICamXML
......................................................................................
124
4.7.4 MV_XML_Ge
tNodeIn
t
erf
aceT
ype
.............................................................................
124
4.7.5 MV_XML_Ge
tNodeAccessMode
...............................................................................
128
4.8 Ob
sole
t
e APIs .....................................................................................................................
132
4.8.1
MV_CC_Ba
y
erSpaalDenoise
...................................................................................
132
4.8.2 MV_CC_ColorCorr
ect
................................................................................................
133
4.8.3 MV_CC_Displa
y
.........................................................................................................
133
4.8.4 MV_CC_Ge
tImag
eIn
f
o ..............................................................................................
140
4.8.5 MV_CC_Ge
tIn
tV
alue
.................................................................................................
142
4.8.6 MV_CC_Ge
tOneFr
ame ..............................................................................................
144
4.8.7 MV_CC_Ge
tOneFr
ameEx
..........................................................................................
147
4.8.8 MV_GIGE_F
or
ceIp
.....................................................................................................
151
4.8.9 MV_CC_Imag
eCon
tr
as
t
.............................................................................................
153
4.8.10 MV_CC_Imag
eSharpen
...........................................................................................
153
4.8.11
MV_CC_NoiseEsma
t
e
...........................................................................................
154
4.8.12 MV_CC_R
egis
t
erE
v
en
tCallBack ...............................................................................
154
4.8.13 MV_CC_R
egis
t
erImag
eCallBack ..............................................................................
157
4.8.14 MV_CC_Sa
v
eImag
e .................................................................................................
161
4.8.15 MV_CC_Sa
v
eImag
eEx
.............................................................................................
164
4.8.16 MV_CC_Se
tBa
y
erCL
UTP
ar
am
..................................................................................
168
4.8.17 MV_CC_Se
tIn
tV
alue
................................................................................................
169
Machine Vision Camer
a SDK (C) De
v
eloper Guide
v
4.8.18
MV_CC_SpaalDenoise
..........................................................................................
171
Chap
t
er 5 Da
t
a Structur
e and
Enumer
aon
.............................................................................
173
5.1 Da
t
a Structur
e ....................................................................................................................
173
5.1.1 MV_A
C
TION_CMD_INF
O
..........................................................................................
173
5.1.2 MV_A
C
TION_CMD_RE
SUL
T
......................................................................................
174
5.1.3 MV_A
C
TION_CMD_RE
SUL
T_LIS
T
..............................................................................
174
5.1.4 MV_ALL_MA
T
CH_INF
O
.............................................................................................
175
5.1.5 MV_CamL_DEV_INF
O
...............................................................................................
175
5.1.6 MV_CC_CCM_P
ARAM ...............................................................................................
176
5.1.7 MV_CC_CCM_P
ARAM_EX .........................................................................................
177
5.1.8 MV_CC_C
ONTRAS
T_P
ARAM .....................................................................................
177
5.1.9 MV_CC_CL
UT_P
ARAM ..............................................................................................
178
5.1.10 MV_CC_C
OL
OR_C
ORRE
C
T_P
ARAM
........................................................................
178
5.1.11 MV_CC_C
ONTRAS
T_P
ARAM ...................................................................................
179
5.1.12 MV_CC_DEVICE_INF
O
.............................................................................................
180
5.1.13 MV_CC_DEVICE_INF
O_LIS
T
....................................................................................
181
5.1.14 MV_CC_FILE_A
CCE
SS
..............................................................................................
182
5.1.15 MV_CC_FILE_A
CCE
SS_PR
OGRE
SS
...........................................................................
182
5.1.16 MV_CC_FLIP_IMA
GE_P
ARAM .................................................................................
183
5.1.17 MV_CC_FRAME_SPE
C_INF
O
...................................................................................
183
5.1.18 MV_CC_GAMMA_P
ARAM
.......................................................................................
184
5.1.19 MV_CC_HB_DE
C
ODE_P
ARAM
................................................................................
185
5.1.20 MV_CC_INPUT_FRAME_INF
O
.................................................................................
185
5.1.21 MV_CC_LSC_CALIB_P
ARAM
....................................................................................
186
5.1.22 MV_CC_LSC_C
ORRE
C
T_P
ARAM
..............................................................................
187
5.1.23 MV_CC_NOISE_E
S
TIMA
TE_P
ARAM
.........................................................................
187
5.1.24 MV_CC_PIXEL_C
ONVER
T_P
ARAM
..........................................................................
189
5.1.25 MV_CC_RE
C
ORD_P
ARAM .......................................................................................
190
Machine Vision Camer
a SDK (C) De
v
eloper Guide
vi
5.1.26 MV_CC_RE
C
T_I
.......................................................................................................
191
5.1.27 MV_CC_R
O
T
A
TE_IMA
GE_P
ARAM ...........................................................................
192
5.1.28 MV_CC_SHARPEN_P
ARAM
.....................................................................................
192
5.1.29 MV_CC_SP
A
TIAL_DENOISE_P
ARAM ........................................................................
193
5.1.30 MV_DISPLA
Y_FRAME_INF
O
....................................................................................
195
5.1.31 MV_EVENT_OUT_INF
O
...........................................................................................
196
5.1.32 MV_FRAME_OUT
....................................................................................................
197
5.1.33 MV_FRAME_OUT_INF
O
..........................................................................................
198
5.1.34 MV_FRAME_OUT_INF
O_EX
....................................................................................
199
5.1.35 MV_GENTL_DEV_INF
O
...........................................................................................
201
5.1.36 MV_GENTL_DEV_INF
O_LIS
T
...................................................................................
202
5.1.37 MV_GENTL_IF_INF
O
...............................................................................................
203
5.1.38 MV_GENTL_IF_INF
O_LIS
T
.......................................................................................
203
5.1.39 MV_GIGE_DEVICE_INF
O
.........................................................................................
204
5.1.40 MV_IMA
GE_B
ASIC_INF
O
........................................................................................
205
5.1.41 MV_MA
T
CH_INF
O_NET_DETE
C
T
............................................................................
207
5.1.42 MV_MA
T
CH_INF
O_USB_DETE
C
T
............................................................................
207
5.1.43 MV_NET
TRANS_INF
O
.............................................................................................
208
5.1.44 MV_OUTPUT_IMA
GE_INF
O ....................................................................................
209
5.1.45 MV_RE
C
ORD_F
ORMA
T_TYPE
..................................................................................
209
5.1.46 MV_RE
C
ONS
TRUC
T_IMA
GE_P
ARAM ......................................................................
209
5.1.47 MV_S
A
VE_IMA
GE_P
ARAM ......................................................................................
210
5.1.48 MV_S
A
VE_IMA
GE_P
ARAM_EX
................................................................................
211
5.1.49 MV_S
A
VE_IMG_T
O_FILE_P
ARAM
...........................................................................
212
5.1.50 MV_S
A
VE_POINT_CL
OUD_P
ARAM .........................................................................
213
5.1.51 MV_TRANSMISSION_TYPE
......................................................................................
214
5.1.52 MV_USB3_DEVICE_INF
O
........................................................................................
215
5.1.53 MV_XML_FE
A
TURE_Base
........................................................................................
216
Machine Vision Camer
a SDK (C) De
v
eloper Guide
vii
5.1.54 MV_XML_FE
A
TURE_Boolean
..................................................................................
217
5.1.55 MV_XML_FE
A
TURE_Ca
t
eg
or
y
.................................................................................
218
5.1.56 MV_XML_FE
A
TURE_Command
...............................................................................
218
5.1.57 MV_XML_FE
A
TURE_EnumEn
tr
y
.............................................................................
219
5.1.58
MV_XML_FE
A
TURE_Enumer
aon
..........................................................................
221
5.1.59 MV_XML_FE
A
TURE_Floa
t
.......................................................................................
222
5.1.60 MV_XML_FE
A
TURE_In
t
eg
er ....................................................................................
223
5.1.61 MV_XML_FE
A
TURE_P
ort
........................................................................................
224
5.1.62 MV_XML_FE
A
TURE_R
egis
t
er ..................................................................................
225
5.1.63 MV_XML_FE
A
TURE_String
......................................................................................
226
5.1.64 MV_XML_FE
A
TURE_V
alue
......................................................................................
227
5.1.65 MV_XML_NODE_FE
A
TURE
......................................................................................
228
5.1.66 MV_XML_NODE
S_LIS
T
............................................................................................
228
5.1.67 MV
CC_CIR
CLE_INF
O
...............................................................................................
229
5.1.68 MV
CC_C
OL
ORF
.......................................................................................................
230
5.1.69 MV
CC_ENUMENTR
Y ...............................................................................................
230
5.1.70 MV
CC_ENUMV
AL
UE
...............................................................................................
230
5.1.71 MV
CC_FL
O
A
TV
AL
UE
................................................................................................
231
5.1.72 MV
CC_INTV
AL
UE
....................................................................................................
232
5.1.73 MV
CC_INTV
AL
UE_EX
..............................................................................................
232
5.1.74 MV
CC_LINE
S_INF
O
.................................................................................................
233
5.1.75 MV
CC_POINTF
........................................................................................................
233
5.1.76 MV
CC_RE
C
T_INF
O
..................................................................................................
234
5.1.77 MV
CC_S
TRING
V
AL
UE
..............................................................................................
234
5.2
Enumer
aon
......................................................................................................................
235
5.2.1 MV_CAM_A
C
QUISITION_MODE
...............................................................................
235
5.2.2 MV_CAM_B
ALANCEWHITE_A
UT
O
............................................................................
235
5.2.3 MV_CAM_EXPOSURE_A
UT
O_MODE
........................................................................
236
Machine Vision Camer
a SDK (C) De
v
eloper Guide
viii
5.2.4 MV_CAM_GAIN_MODE ............................................................................................
236
5.2.5 MV_CAM_GAMMA_SELE
C
T
OR
.................................................................................
237
5.2.6 MV_CAM_TRIGGER_MODE
......................................................................................
237
5.2.7 MV_CAM_TRIGGER_SOUR
CE
...................................................................................
237
5.2.8 MV_CC_B
A
YER_NOISE_FE
A
TURE_TYPE
....................................................................
238
5.2.9 MV_CC_GAMMA_TYPE
.............................................................................................
238
5.2.10 MV_CC_S
TRE
AM_EX
CEP
TION_TYPE
.......................................................................
239
5.2.11 MV_GIGE_EVENT
....................................................................................................
240
5.2.12 MV_GIGE_TRANSMISSION_TYPE
............................................................................
241
5.2.13 MV_GRAB_S
TRA
TE
G
Y
.............................................................................................
241
5.2.14 MV_IMA
GE_RE
C
ONS
TRUC
TION_METHOD
.............................................................
242
5.2.15 MV_IMG_FLIP_TYPE
...............................................................................................
242
5.2.16 MV_IMG_R
O
T
A
TION_ANGLE ..................................................................................
243
5.2.17 MV_S
A
VE_IAMGE_TYPE
..........................................................................................
243
5.2.18 MV_S
A
VE_POINT_CL
OUD_FILE_TYPE
.....................................................................
244
5.2.19 MV_SOR
T_METHOD
...............................................................................................
244
5.2.20 MV_XML_AccessMode
...........................................................................................
245
5.2.21 MV_XML_In
t
erf
aceT
ype .........................................................................................
245
5.2.22 MV_XML_Visibility
..................................................................................................
247
5.2.23 MvG
v
spPix
elT
ype ....................................................................................................
247
Chap
t
er 6
F
A
Q (Fr
equen
tly Ask
ed
Queson)
...........................................................................
253
6.1 GigE Vision Camer
a
............................................................................................................
253
6.1.1 Wh
y is ther
e pack
e
t loss?
..........................................................................................
253
6.1.2 Wh
y does link err
or occur in the normal c
ompiled Demo?
......................................
253
6.1.3 Wh
y c
an't I se
t the
s
t
ac
IP under DHCP?
.................................................................
253
6.1.4 Wh
y do I f
ailed t
o perf
orm the
sow
ar
e
trig
g
er c
ommand when c
alling SDK?
........
254
6.1.5 Wh
y does the c
amer
a
oen
be
oine?
....................................................................
254
6.1.6 Wh
y is no permission r
e
turned when c
alling API MV_CC_OpenDe
vice?
.................
254
Machine Vision Camer
a SDK (C) De
v
eloper Guide
ix