限制来自Google Cloud Vision API的响应

时间:2018-10-30 03:08:22

标签: google-cloud-vision

当前使用google cloud vision API从文档图像中提取文本。

当前情况-该API运作良好,并且返回了大量数据,包括单词所处位置的边界框。

期望的结果-仅查询从图片中拉出的单词,而不查询有关单词的边界框和顶点位置的所有元数据(就像查询结果的99%一样,大约是25万,当我只想要这些单词时,这是一个巨大的浪费)

import javafx.scene.input.KeyEvent
import tornadofx.*

fun main(args: Array<String>) {
    launch<HelloWorldApp>(args)
}

class HelloWorldApp : App(HelloWorld::class)

class HelloWorld : View() {
    override val root = hbox {
        keyboard {
            addEventHandler(KeyEvent.KEY_PRESSED) { println(it.code) }
        }
    }
}

1 个答案:

答案 0 :(得分:1)

目前,nodeJS的Google Cloud Vision客户端库没有用于请求部分响应(如您要求的响应)的选项。 无论如何,如果您只想显示文本而不显示其他任何元数据,则可以像这样过滤响应:

const fullTextAnnotation = results[0].fullTextAnnotation;
console.log(`Full text: ${fullTextAnnotation.text}`);

您将在“ fullTextAnnotation”中获得完整的响应,然后可以获取fullTextAnnotation.text以仅获取带有“ \ n”字符的文本以分隔文本块,而无需任何元数据。

如果您有兴趣使用其他东西而不是nodeJS,则Java客户端库为Annotate类提供了setFields()方法,并且从API Explorer中,您可以使用部分字段掩码来查看效果。