001package net.gdface.sdk.thrift.client; 002 003import com.facebook.swift.codec.*; 004import com.facebook.swift.codec.ThriftField.Requiredness; 005import com.facebook.swift.service.*; 006import com.google.common.util.concurrent.ListenableFuture; 007import java.io.*; 008import java.util.*; 009 010@ThriftService("FaceApi") 011public interface FaceApi 012{ 013 @ThriftService("FaceApi") 014 public interface Async 015 { 016 @ThriftMethod(value = "compare2Face", 017 exception = { 018 @ThriftException(type=ImageErrorException.class, id=1), 019 @ThriftException(type=NotFaceDetectedException.class, id=2), 020 @ThriftException(type=ServiceRuntimeException.class, id=3) 021 }) 022 ListenableFuture<Double> compare2Face( 023 @ThriftField(value=1, name="imgData1", requiredness=Requiredness.OPTIONAL) final byte [] imgData1, 024 @ThriftField(value=2, name="facePos1", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos1, 025 @ThriftField(value=3, name="imgData2", requiredness=Requiredness.OPTIONAL) final byte [] imgData2, 026 @ThriftField(value=4, name="facePos2", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos2 027 ); 028 029 @ThriftMethod(value = "compareCode", 030 exception = { 031 @ThriftException(type=ServiceRuntimeException.class, id=1) 032 }) 033 ListenableFuture<Double> compareCode( 034 @ThriftField(value=1, name="code1", requiredness=Requiredness.OPTIONAL) final byte [] code1, 035 @ThriftField(value=2, name="code2", requiredness=Requiredness.OPTIONAL) final byte [] code2 036 ); 037 038 @ThriftMethod(value = "compareCodes", 039 exception = { 040 @ThriftException(type=ServiceRuntimeException.class, id=1) 041 }) 042 ListenableFuture<List<Double>> compareCodes( 043 @ThriftField(value=1, name="code1", requiredness=Requiredness.OPTIONAL) final byte [] code1, 044 @ThriftField(value=2, name="codes", requiredness=Requiredness.OPTIONAL) final List<CodeInfo> codes 045 ); 046 047 @ThriftMethod(value = "compareFaces", 048 exception = { 049 @ThriftException(type=ImageErrorException.class, id=1), 050 @ThriftException(type=NotFaceDetectedException.class, id=2), 051 @ThriftException(type=ServiceRuntimeException.class, id=3) 052 }) 053 ListenableFuture<CompareResult> compareFaces( 054 @ThriftField(value=1, name="code", requiredness=Requiredness.OPTIONAL) final byte [] code, 055 @ThriftField(value=2, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 056 @ThriftField(value=3, name="faceNum", requiredness=Requiredness.REQUIRED) final int faceNum 057 ); 058 059 @ThriftMethod(value = "compareFeatures", 060 exception = { 061 @ThriftException(type=ServiceRuntimeException.class, id=1) 062 }) 063 ListenableFuture<List<Double>> compareFeatures( 064 @ThriftField(value=1, name="code1", requiredness=Requiredness.OPTIONAL) final byte [] code1, 065 @ThriftField(value=2, name="codes", requiredness=Requiredness.OPTIONAL) final List<byte []> codes 066 ); 067 068 @ThriftMethod(value = "detectAndCompare2Face", 069 exception = { 070 @ThriftException(type=ImageErrorException.class, id=1), 071 @ThriftException(type=NotFaceDetectedException.class, id=2), 072 @ThriftException(type=ServiceRuntimeException.class, id=3) 073 }) 074 ListenableFuture<Double> detectAndCompare2Face( 075 @ThriftField(value=1, name="imgData1", requiredness=Requiredness.OPTIONAL) final byte [] imgData1, 076 @ThriftField(value=2, name="detectRect1", requiredness=Requiredness.OPTIONAL) final FRect detectRect1, 077 @ThriftField(value=3, name="imgData2", requiredness=Requiredness.OPTIONAL) final byte [] imgData2, 078 @ThriftField(value=4, name="detectRect2", requiredness=Requiredness.OPTIONAL) final FRect detectRect2 079 ); 080 081 @ThriftMethod(value = "detectAndGetCodeInfo", 082 exception = { 083 @ThriftException(type=ImageErrorException.class, id=1), 084 @ThriftException(type=NotFaceDetectedException.class, id=2), 085 @ThriftException(type=ServiceRuntimeException.class, id=3) 086 }) 087 ListenableFuture<List<CodeInfo>> detectAndGetCodeInfo( 088 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 089 @ThriftField(value=2, name="faceNum", requiredness=Requiredness.REQUIRED) final int faceNum 090 ); 091 092 @ThriftMethod(value = "detectCenterFace", 093 exception = { 094 @ThriftException(type=ImageErrorException.class, id=1), 095 @ThriftException(type=NotFaceDetectedException.class, id=2), 096 @ThriftException(type=ServiceRuntimeException.class, id=3) 097 }) 098 ListenableFuture<CodeInfo> detectCenterFace( 099 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData 100 ); 101 102 @ThriftMethod(value = "detectFace", 103 exception = { 104 @ThriftException(type=ImageErrorException.class, id=1), 105 @ThriftException(type=ServiceRuntimeException.class, id=2) 106 }) 107 ListenableFuture<List<CodeInfo>> detectFace( 108 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData 109 ); 110 111 @ThriftMethod(value = "detectMaxFace", 112 exception = { 113 @ThriftException(type=ImageErrorException.class, id=1), 114 @ThriftException(type=NotFaceDetectedException.class, id=2), 115 @ThriftException(type=ServiceRuntimeException.class, id=3) 116 }) 117 ListenableFuture<CodeInfo> detectMaxFace( 118 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData 119 ); 120 121 @ThriftMethod(value = "getCodeInfo", 122 exception = { 123 @ThriftException(type=NotFaceDetectedException.class, id=1), 124 @ThriftException(type=ServiceRuntimeException.class, id=2) 125 }) 126 ListenableFuture<List<CodeInfo>> getCodeInfo( 127 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 128 @ThriftField(value=2, name="faceNum", requiredness=Requiredness.REQUIRED) final int faceNum, 129 @ThriftField(value=3, name="facePos", requiredness=Requiredness.OPTIONAL) final List<CodeInfo> facePos 130 ); 131 132 @ThriftMethod(value = "getCodeInfoSingle", 133 exception = { 134 @ThriftException(type=ServiceRuntimeException.class, id=1) 135 }) 136 ListenableFuture<CodeInfo> getCodeInfoSingle( 137 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 138 @ThriftField(value=2, name="facePos", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos 139 ); 140 141 @ThriftMethod(value = "getFeature", 142 exception = { 143 @ThriftException(type=NotFaceDetectedException.class, id=1), 144 @ThriftException(type=ServiceRuntimeException.class, id=2) 145 }) 146 ListenableFuture<byte []> getFeature( 147 @ThriftField(value=1, name="faces", requiredness=Requiredness.OPTIONAL) final Map<byte [], CodeInfo> faces 148 ); 149 150 @ThriftMethod(value = "hasFace", 151 exception = { 152 @ThriftException(type=ImageErrorException.class, id=1), 153 @ThriftException(type=ServiceRuntimeException.class, id=2) 154 }) 155 ListenableFuture<Boolean> hasFace( 156 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData 157 ); 158 159 @ThriftMethod(value = "isLocal", 160 exception = { 161 @ThriftException(type=ServiceRuntimeException.class, id=1) 162 }) 163 ListenableFuture<Boolean> isLocal(); 164 165 @ThriftMethod(value = "matDetectAndGetCodeInfo", 166 exception = { 167 @ThriftException(type=NotFaceDetectedException.class, id=1), 168 @ThriftException(type=ServiceRuntimeException.class, id=2) 169 }) 170 ListenableFuture<List<CodeInfo>> matDetectAndGetCodeInfo( 171 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 172 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 173 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 174 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 175 @ThriftField(value=5, name="faceNum", requiredness=Requiredness.REQUIRED) final int faceNum 176 ); 177 178 @ThriftMethod(value = "matDetectFace", 179 exception = { 180 @ThriftException(type=ServiceRuntimeException.class, id=1) 181 }) 182 ListenableFuture<List<CodeInfo>> matDetectFace( 183 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 184 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 185 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 186 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height 187 ); 188 189 @ThriftMethod(value = "matDetectMaxFace", 190 exception = { 191 @ThriftException(type=NotFaceDetectedException.class, id=1), 192 @ThriftException(type=ServiceRuntimeException.class, id=2) 193 }) 194 ListenableFuture<CodeInfo> matDetectMaxFace( 195 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 196 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 197 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 198 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height 199 ); 200 201 @ThriftMethod(value = "matGetCodeInfo", 202 exception = { 203 @ThriftException(type=NotFaceDetectedException.class, id=1), 204 @ThriftException(type=ServiceRuntimeException.class, id=2) 205 }) 206 ListenableFuture<List<CodeInfo>> matGetCodeInfo( 207 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 208 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 209 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 210 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 211 @ThriftField(value=5, name="facenum", requiredness=Requiredness.REQUIRED) final int facenum, 212 @ThriftField(value=6, name="facePos", requiredness=Requiredness.OPTIONAL) final List<CodeInfo> facePos 213 ); 214 215 @ThriftMethod(value = "matGetCodeInfoSingle", 216 exception = { 217 @ThriftException(type=ServiceRuntimeException.class, id=1) 218 }) 219 ListenableFuture<CodeInfo> matGetCodeInfoSingle( 220 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 221 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 222 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 223 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 224 @ThriftField(value=5, name="facePos", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos 225 ); 226 227 @ThriftMethod(value = "matHasFace", 228 exception = { 229 @ThriftException(type=ServiceRuntimeException.class, id=1) 230 }) 231 ListenableFuture<Boolean> matHasFace( 232 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 233 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 234 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 235 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height 236 ); 237 238 @ThriftMethod(value = "matSearchFaces", 239 exception = { 240 @ThriftException(type=ImageErrorException.class, id=1), 241 @ThriftException(type=NotFaceDetectedException.class, id=2), 242 @ThriftException(type=ServiceRuntimeException.class, id=3) 243 }) 244 ListenableFuture<List<FseResult>> matSearchFaces( 245 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 246 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 247 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 248 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 249 @ThriftField(value=5, name="facePos", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos, 250 @ThriftField(value=6, name="similarty", requiredness=Requiredness.REQUIRED) final double similarty, 251 @ThriftField(value=7, name="rows", requiredness=Requiredness.REQUIRED) final int rows 252 ); 253 254 @ThriftMethod(value = "matWearMask", 255 exception = { 256 @ThriftException(type=ServiceRuntimeException.class, id=1) 257 }) 258 ListenableFuture<Boolean> matWearMask( 259 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 260 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 261 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 262 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 263 @ThriftField(value=5, name="faceInfo", requiredness=Requiredness.OPTIONAL) final CodeInfo faceInfo 264 ); 265 266 @ThriftMethod(value = "sdkCapacity", 267 exception = { 268 @ThriftException(type=ServiceRuntimeException.class, id=1) 269 }) 270 ListenableFuture<Map<String, String>> sdkCapacity(); 271 272 @ThriftMethod(value = "searchFaces", 273 exception = { 274 @ThriftException(type=ImageErrorException.class, id=1), 275 @ThriftException(type=NotFaceDetectedException.class, id=2), 276 @ThriftException(type=ServiceRuntimeException.class, id=3) 277 }) 278 ListenableFuture<List<FseResult>> searchFaces( 279 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 280 @ThriftField(value=2, name="facePos", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos, 281 @ThriftField(value=3, name="similarty", requiredness=Requiredness.REQUIRED) final double similarty, 282 @ThriftField(value=4, name="rows", requiredness=Requiredness.REQUIRED) final int rows 283 ); 284 285 @ThriftMethod(value = "searchFeatures", 286 exception = { 287 @ThriftException(type=ServiceRuntimeException.class, id=1) 288 }) 289 ListenableFuture<List<FseResult>> searchFeatures( 290 @ThriftField(value=1, name="feature", requiredness=Requiredness.OPTIONAL) final byte [] feature, 291 @ThriftField(value=2, name="similarty", requiredness=Requiredness.REQUIRED) final double similarty, 292 @ThriftField(value=3, name="rows", requiredness=Requiredness.REQUIRED) final int rows 293 ); 294 295 @ThriftMethod(value = "wearMask", 296 exception = { 297 @ThriftException(type=ImageErrorException.class, id=1), 298 @ThriftException(type=ServiceRuntimeException.class, id=2) 299 }) 300 ListenableFuture<Boolean> wearMask( 301 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 302 @ThriftField(value=2, name="faceInfo", requiredness=Requiredness.OPTIONAL) final CodeInfo faceInfo 303 ); 304 } 305 @ThriftMethod(value = "compare2Face", 306 exception = { 307 @ThriftException(type=ImageErrorException.class, id=1), 308 @ThriftException(type=NotFaceDetectedException.class, id=2), 309 @ThriftException(type=ServiceRuntimeException.class, id=3) 310 }) 311 double compare2Face( 312 @ThriftField(value=1, name="imgData1", requiredness=Requiredness.OPTIONAL) final byte [] imgData1, 313 @ThriftField(value=2, name="facePos1", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos1, 314 @ThriftField(value=3, name="imgData2", requiredness=Requiredness.OPTIONAL) final byte [] imgData2, 315 @ThriftField(value=4, name="facePos2", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos2 316 ) throws ImageErrorException, NotFaceDetectedException, ServiceRuntimeException; 317 318 @ThriftMethod(value = "compareCode", 319 exception = { 320 @ThriftException(type=ServiceRuntimeException.class, id=1) 321 }) 322 double compareCode( 323 @ThriftField(value=1, name="code1", requiredness=Requiredness.OPTIONAL) final byte [] code1, 324 @ThriftField(value=2, name="code2", requiredness=Requiredness.OPTIONAL) final byte [] code2 325 ) throws ServiceRuntimeException; 326 327 @ThriftMethod(value = "compareCodes", 328 exception = { 329 @ThriftException(type=ServiceRuntimeException.class, id=1) 330 }) 331 List<Double> compareCodes( 332 @ThriftField(value=1, name="code1", requiredness=Requiredness.OPTIONAL) final byte [] code1, 333 @ThriftField(value=2, name="codes", requiredness=Requiredness.OPTIONAL) final List<CodeInfo> codes 334 ) throws ServiceRuntimeException; 335 336 @ThriftMethod(value = "compareFaces", 337 exception = { 338 @ThriftException(type=ImageErrorException.class, id=1), 339 @ThriftException(type=NotFaceDetectedException.class, id=2), 340 @ThriftException(type=ServiceRuntimeException.class, id=3) 341 }) 342 CompareResult compareFaces( 343 @ThriftField(value=1, name="code", requiredness=Requiredness.OPTIONAL) final byte [] code, 344 @ThriftField(value=2, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 345 @ThriftField(value=3, name="faceNum", requiredness=Requiredness.REQUIRED) final int faceNum 346 ) throws ImageErrorException, NotFaceDetectedException, ServiceRuntimeException; 347 348 @ThriftMethod(value = "compareFeatures", 349 exception = { 350 @ThriftException(type=ServiceRuntimeException.class, id=1) 351 }) 352 List<Double> compareFeatures( 353 @ThriftField(value=1, name="code1", requiredness=Requiredness.OPTIONAL) final byte [] code1, 354 @ThriftField(value=2, name="codes", requiredness=Requiredness.OPTIONAL) final List<byte []> codes 355 ) throws ServiceRuntimeException; 356 357 @ThriftMethod(value = "detectAndCompare2Face", 358 exception = { 359 @ThriftException(type=ImageErrorException.class, id=1), 360 @ThriftException(type=NotFaceDetectedException.class, id=2), 361 @ThriftException(type=ServiceRuntimeException.class, id=3) 362 }) 363 double detectAndCompare2Face( 364 @ThriftField(value=1, name="imgData1", requiredness=Requiredness.OPTIONAL) final byte [] imgData1, 365 @ThriftField(value=2, name="detectRect1", requiredness=Requiredness.OPTIONAL) final FRect detectRect1, 366 @ThriftField(value=3, name="imgData2", requiredness=Requiredness.OPTIONAL) final byte [] imgData2, 367 @ThriftField(value=4, name="detectRect2", requiredness=Requiredness.OPTIONAL) final FRect detectRect2 368 ) throws ImageErrorException, NotFaceDetectedException, ServiceRuntimeException; 369 370 @ThriftMethod(value = "detectAndGetCodeInfo", 371 exception = { 372 @ThriftException(type=ImageErrorException.class, id=1), 373 @ThriftException(type=NotFaceDetectedException.class, id=2), 374 @ThriftException(type=ServiceRuntimeException.class, id=3) 375 }) 376 List<CodeInfo> detectAndGetCodeInfo( 377 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 378 @ThriftField(value=2, name="faceNum", requiredness=Requiredness.REQUIRED) final int faceNum 379 ) throws ImageErrorException, NotFaceDetectedException, ServiceRuntimeException; 380 381 @ThriftMethod(value = "detectCenterFace", 382 exception = { 383 @ThriftException(type=ImageErrorException.class, id=1), 384 @ThriftException(type=NotFaceDetectedException.class, id=2), 385 @ThriftException(type=ServiceRuntimeException.class, id=3) 386 }) 387 CodeInfo detectCenterFace( 388 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData 389 ) throws ImageErrorException, NotFaceDetectedException, ServiceRuntimeException; 390 391 @ThriftMethod(value = "detectFace", 392 exception = { 393 @ThriftException(type=ImageErrorException.class, id=1), 394 @ThriftException(type=ServiceRuntimeException.class, id=2) 395 }) 396 List<CodeInfo> detectFace( 397 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData 398 ) throws ImageErrorException, ServiceRuntimeException; 399 400 @ThriftMethod(value = "detectMaxFace", 401 exception = { 402 @ThriftException(type=ImageErrorException.class, id=1), 403 @ThriftException(type=NotFaceDetectedException.class, id=2), 404 @ThriftException(type=ServiceRuntimeException.class, id=3) 405 }) 406 CodeInfo detectMaxFace( 407 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData 408 ) throws ImageErrorException, NotFaceDetectedException, ServiceRuntimeException; 409 410 @ThriftMethod(value = "getCodeInfo", 411 exception = { 412 @ThriftException(type=NotFaceDetectedException.class, id=1), 413 @ThriftException(type=ServiceRuntimeException.class, id=2) 414 }) 415 List<CodeInfo> getCodeInfo( 416 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 417 @ThriftField(value=2, name="faceNum", requiredness=Requiredness.REQUIRED) final int faceNum, 418 @ThriftField(value=3, name="facePos", requiredness=Requiredness.OPTIONAL) final List<CodeInfo> facePos 419 ) throws NotFaceDetectedException, ServiceRuntimeException; 420 421 @ThriftMethod(value = "getCodeInfoSingle", 422 exception = { 423 @ThriftException(type=ServiceRuntimeException.class, id=1) 424 }) 425 CodeInfo getCodeInfoSingle( 426 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 427 @ThriftField(value=2, name="facePos", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos 428 ) throws ServiceRuntimeException; 429 430 @ThriftMethod(value = "getFeature", 431 exception = { 432 @ThriftException(type=NotFaceDetectedException.class, id=1), 433 @ThriftException(type=ServiceRuntimeException.class, id=2) 434 }) 435 byte [] getFeature( 436 @ThriftField(value=1, name="faces", requiredness=Requiredness.OPTIONAL) final Map<byte [], CodeInfo> faces 437 ) throws NotFaceDetectedException, ServiceRuntimeException; 438 439 @ThriftMethod(value = "hasFace", 440 exception = { 441 @ThriftException(type=ImageErrorException.class, id=1), 442 @ThriftException(type=ServiceRuntimeException.class, id=2) 443 }) 444 boolean hasFace( 445 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData 446 ) throws ImageErrorException, ServiceRuntimeException; 447 448 @ThriftMethod(value = "isLocal", 449 exception = { 450 @ThriftException(type=ServiceRuntimeException.class, id=1) 451 }) 452 boolean isLocal() throws ServiceRuntimeException; 453 454 @ThriftMethod(value = "matDetectAndGetCodeInfo", 455 exception = { 456 @ThriftException(type=NotFaceDetectedException.class, id=1), 457 @ThriftException(type=ServiceRuntimeException.class, id=2) 458 }) 459 List<CodeInfo> matDetectAndGetCodeInfo( 460 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 461 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 462 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 463 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 464 @ThriftField(value=5, name="faceNum", requiredness=Requiredness.REQUIRED) final int faceNum 465 ) throws NotFaceDetectedException, ServiceRuntimeException; 466 467 @ThriftMethod(value = "matDetectFace", 468 exception = { 469 @ThriftException(type=ServiceRuntimeException.class, id=1) 470 }) 471 List<CodeInfo> matDetectFace( 472 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 473 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 474 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 475 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height 476 ) throws ServiceRuntimeException; 477 478 @ThriftMethod(value = "matDetectMaxFace", 479 exception = { 480 @ThriftException(type=NotFaceDetectedException.class, id=1), 481 @ThriftException(type=ServiceRuntimeException.class, id=2) 482 }) 483 CodeInfo matDetectMaxFace( 484 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 485 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 486 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 487 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height 488 ) throws NotFaceDetectedException, ServiceRuntimeException; 489 490 @ThriftMethod(value = "matGetCodeInfo", 491 exception = { 492 @ThriftException(type=NotFaceDetectedException.class, id=1), 493 @ThriftException(type=ServiceRuntimeException.class, id=2) 494 }) 495 List<CodeInfo> matGetCodeInfo( 496 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 497 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 498 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 499 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 500 @ThriftField(value=5, name="facenum", requiredness=Requiredness.REQUIRED) final int facenum, 501 @ThriftField(value=6, name="facePos", requiredness=Requiredness.OPTIONAL) final List<CodeInfo> facePos 502 ) throws NotFaceDetectedException, ServiceRuntimeException; 503 504 @ThriftMethod(value = "matGetCodeInfoSingle", 505 exception = { 506 @ThriftException(type=ServiceRuntimeException.class, id=1) 507 }) 508 CodeInfo matGetCodeInfoSingle( 509 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 510 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 511 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 512 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 513 @ThriftField(value=5, name="facePos", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos 514 ) throws ServiceRuntimeException; 515 516 @ThriftMethod(value = "matHasFace", 517 exception = { 518 @ThriftException(type=ServiceRuntimeException.class, id=1) 519 }) 520 boolean matHasFace( 521 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 522 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 523 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 524 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height 525 ) throws ServiceRuntimeException; 526 527 @ThriftMethod(value = "matSearchFaces", 528 exception = { 529 @ThriftException(type=ImageErrorException.class, id=1), 530 @ThriftException(type=NotFaceDetectedException.class, id=2), 531 @ThriftException(type=ServiceRuntimeException.class, id=3) 532 }) 533 List<FseResult> matSearchFaces( 534 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 535 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 536 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 537 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 538 @ThriftField(value=5, name="facePos", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos, 539 @ThriftField(value=6, name="similarty", requiredness=Requiredness.REQUIRED) final double similarty, 540 @ThriftField(value=7, name="rows", requiredness=Requiredness.REQUIRED) final int rows 541 ) throws ImageErrorException, NotFaceDetectedException, ServiceRuntimeException; 542 543 @ThriftMethod(value = "matWearMask", 544 exception = { 545 @ThriftException(type=ServiceRuntimeException.class, id=1) 546 }) 547 boolean matWearMask( 548 @ThriftField(value=1, name="matType", requiredness=Requiredness.OPTIONAL) final MatType matType, 549 @ThriftField(value=2, name="matData", requiredness=Requiredness.OPTIONAL) final byte [] matData, 550 @ThriftField(value=3, name="width", requiredness=Requiredness.REQUIRED) final int width, 551 @ThriftField(value=4, name="height", requiredness=Requiredness.REQUIRED) final int height, 552 @ThriftField(value=5, name="faceInfo", requiredness=Requiredness.OPTIONAL) final CodeInfo faceInfo 553 ) throws ServiceRuntimeException; 554 555 @ThriftMethod(value = "sdkCapacity", 556 exception = { 557 @ThriftException(type=ServiceRuntimeException.class, id=1) 558 }) 559 Map<String, String> sdkCapacity() throws ServiceRuntimeException; 560 561 @ThriftMethod(value = "searchFaces", 562 exception = { 563 @ThriftException(type=ImageErrorException.class, id=1), 564 @ThriftException(type=NotFaceDetectedException.class, id=2), 565 @ThriftException(type=ServiceRuntimeException.class, id=3) 566 }) 567 List<FseResult> searchFaces( 568 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 569 @ThriftField(value=2, name="facePos", requiredness=Requiredness.OPTIONAL) final CodeInfo facePos, 570 @ThriftField(value=3, name="similarty", requiredness=Requiredness.REQUIRED) final double similarty, 571 @ThriftField(value=4, name="rows", requiredness=Requiredness.REQUIRED) final int rows 572 ) throws ImageErrorException, NotFaceDetectedException, ServiceRuntimeException; 573 574 @ThriftMethod(value = "searchFeatures", 575 exception = { 576 @ThriftException(type=ServiceRuntimeException.class, id=1) 577 }) 578 List<FseResult> searchFeatures( 579 @ThriftField(value=1, name="feature", requiredness=Requiredness.OPTIONAL) final byte [] feature, 580 @ThriftField(value=2, name="similarty", requiredness=Requiredness.REQUIRED) final double similarty, 581 @ThriftField(value=3, name="rows", requiredness=Requiredness.REQUIRED) final int rows 582 ) throws ServiceRuntimeException; 583 584 @ThriftMethod(value = "wearMask", 585 exception = { 586 @ThriftException(type=ImageErrorException.class, id=1), 587 @ThriftException(type=ServiceRuntimeException.class, id=2) 588 }) 589 boolean wearMask( 590 @ThriftField(value=1, name="imgData", requiredness=Requiredness.OPTIONAL) final byte [] imgData, 591 @ThriftField(value=2, name="faceInfo", requiredness=Requiredness.OPTIONAL) final CodeInfo faceInfo 592 ) throws ImageErrorException, ServiceRuntimeException; 593}