@java.lang.Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    if (((bitField0_ & 0x00000001) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getBoundingPoly());
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getFdBoundingPoly());
    }
    for (int i = 0; i < landmarks_.size(); i++) {
      size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, landmarks_.get(i));
    }
    if (java.lang.Float.floatToRawIntBits(rollAngle_) != 0) {
      size += com.google.protobuf.CodedOutputStream.computeFloatSize(4, rollAngle_);
    }
    if (java.lang.Float.floatToRawIntBits(panAngle_) != 0) {
      size += com.google.protobuf.CodedOutputStream.computeFloatSize(5, panAngle_);
    }
    if (java.lang.Float.floatToRawIntBits(tiltAngle_) != 0) {
      size += com.google.protobuf.CodedOutputStream.computeFloatSize(6, tiltAngle_);
    }
    if (java.lang.Float.floatToRawIntBits(detectionConfidence_) != 0) {
      size += com.google.protobuf.CodedOutputStream.computeFloatSize(7, detectionConfidence_);
    }
    if (java.lang.Float.floatToRawIntBits(landmarkingConfidence_) != 0) {
      size += com.google.protobuf.CodedOutputStream.computeFloatSize(8, landmarkingConfidence_);
    }
    if (joyLikelihood_ != com.google.cloud.vision.v1p4beta1.Likelihood.UNKNOWN.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(9, joyLikelihood_);
    }
    if (sorrowLikelihood_ != com.google.cloud.vision.v1p4beta1.Likelihood.UNKNOWN.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(10, sorrowLikelihood_);
    }
    if (angerLikelihood_ != com.google.cloud.vision.v1p4beta1.Likelihood.UNKNOWN.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(11, angerLikelihood_);
    }
    if (surpriseLikelihood_ != com.google.cloud.vision.v1p4beta1.Likelihood.UNKNOWN.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(12, surpriseLikelihood_);
    }
    if (underExposedLikelihood_
        != com.google.cloud.vision.v1p4beta1.Likelihood.UNKNOWN.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(13, underExposedLikelihood_);
    }
    if (blurredLikelihood_ != com.google.cloud.vision.v1p4beta1.Likelihood.UNKNOWN.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(14, blurredLikelihood_);
    }
    if (headwearLikelihood_ != com.google.cloud.vision.v1p4beta1.Likelihood.UNKNOWN.getNumber()) {
      size += com.google.protobuf.CodedOutputStream.computeEnumSize(15, headwearLikelihood_);
    }
    for (int i = 0; i < recognitionResult_.size(); i++) {
      size +=
          com.google.protobuf.CodedOutputStream.computeMessageSize(16, recognitionResult_.get(i));
    }
    size += getUnknownFields().getSerializedSize();
    memoizedSize = size;
    return size;
  }
<pre>
Additional recognition information. Only computed if
image_context.face_recognition_params is provided, **and** a match is found
to a [Celebrity][google.cloud.vision.v1p4beta1.Celebrity] in the input
[CelebritySet][google.cloud.vision.v1p4beta1.CelebritySet]. This field is
sorted in order of decreasing confidence values.
</pre>

<code>repeated .google.cloud.vision.v1p4beta1.FaceRecognitionResult recognition_result = 16;
</code>
java-vision/proto-google-cloud-vision-v1p4beta1/src/main/java/com/google/cloud/vision/v1p4beta1/FaceAnnotation.java