浏览代码

Generated 2019-12-30 for ocr.

sdk-team 6 年之前
父节点
当前提交
04b7eacc1c
共有 75 个文件被更改,包括 3010 次插入0 次删除
  1. 4 0
      ChangeLog.txt
  2. 129 0
      services/ocr/client.go
  3. 20 0
      services/ocr/endpoint.go
  4. 105 0
      services/ocr/recognize_account_page.go
  5. 105 0
      services/ocr/recognize_bank_card.go
  6. 105 0
      services/ocr/recognize_business_card.go
  7. 105 0
      services/ocr/recognize_business_license.go
  8. 107 0
      services/ocr/recognize_character.go
  9. 106 0
      services/ocr/recognize_driver_license.go
  10. 106 0
      services/ocr/recognize_driving_license.go
  11. 106 0
      services/ocr/recognize_identity_card.go
  12. 105 0
      services/ocr/recognize_license_plate.go
  13. 105 0
      services/ocr/recognize_stamp.go
  14. 110 0
      services/ocr/recognize_table.go
  15. 105 0
      services/ocr/recognize_taxi_invoice.go
  16. 105 0
      services/ocr/recognize_train_ticket.go
  17. 105 0
      services/ocr/recognize_vin_code.go
  18. 21 0
      services/ocr/struct_addresses.go
  19. 34 0
      services/ocr/struct_back_result.go
  20. 22 0
      services/ocr/struct_card_area.go
  21. 21 0
      services/ocr/struct_card_areas.go
  22. 21 0
      services/ocr/struct_cell_phone_numbers.go
  23. 22 0
      services/ocr/struct_center.go
  24. 21 0
      services/ocr/struct_companies.go
  25. 60 0
      services/ocr/struct_data.go
  26. 34 0
      services/ocr/struct_data_in_recognize_business_license.go
  27. 21 0
      services/ocr/struct_data_in_recognize_stamp.go
  28. 21 0
      services/ocr/struct_departments.go
  29. 21 0
      services/ocr/struct_emails.go
  30. 24 0
      services/ocr/struct_emblem.go
  31. 22 0
      services/ocr/struct_face_rect_vertice.go
  32. 21 0
      services/ocr/struct_face_rect_vertices.go
  33. 23 0
      services/ocr/struct_face_rectangle.go
  34. 35 0
      services/ocr/struct_face_result.go
  35. 29 0
      services/ocr/struct_front_result.go
  36. 21 0
      services/ocr/struct_general_text.go
  37. 22 0
      services/ocr/struct_general_text_item.go
  38. 24 0
      services/ocr/struct_invalid_stamp_area.go
  39. 21 0
      services/ocr/struct_invalid_stamp_areas.go
  40. 23 0
      services/ocr/struct_invoice.go
  41. 24 0
      services/ocr/struct_invoice_roi.go
  42. 21 0
      services/ocr/struct_invoices.go
  43. 22 0
      services/ocr/struct_item.go
  44. 23 0
      services/ocr/struct_item_roi.go
  45. 21 0
      services/ocr/struct_items.go
  46. 21 0
      services/ocr/struct_office_phone_numbers.go
  47. 24 0
      services/ocr/struct_other_stamp_area.go
  48. 21 0
      services/ocr/struct_other_stamp_areas.go
  49. 25 0
      services/ocr/struct_plate.go
  50. 21 0
      services/ocr/struct_plates.go
  51. 24 0
      services/ocr/struct_qr_code.go
  52. 24 0
      services/ocr/struct_register_stamp_area.go
  53. 21 0
      services/ocr/struct_register_stamp_areas.go
  54. 23 0
      services/ocr/struct_result.go
  55. 21 0
      services/ocr/struct_results_in_recognize_character.go
  56. 21 0
      services/ocr/struct_results_in_recognize_stamp.go
  57. 23 0
      services/ocr/struct_results_item.go
  58. 28 0
      services/ocr/struct_roi.go
  59. 24 0
      services/ocr/struct_size.go
  60. 24 0
      services/ocr/struct_stamp.go
  61. 23 0
      services/ocr/struct_table.go
  62. 27 0
      services/ocr/struct_table_column.go
  63. 21 0
      services/ocr/struct_table_columns.go
  64. 21 0
      services/ocr/struct_table_row.go
  65. 21 0
      services/ocr/struct_table_rows.go
  66. 21 0
      services/ocr/struct_tables.go
  67. 22 0
      services/ocr/struct_text.go
  68. 25 0
      services/ocr/struct_text_rectangle.go
  69. 21 0
      services/ocr/struct_text_rectangles.go
  70. 21 0
      services/ocr/struct_texts.go
  71. 24 0
      services/ocr/struct_title.go
  72. 24 0
      services/ocr/struct_title_area.go
  73. 21 0
      services/ocr/struct_titles.go
  74. 24 0
      services/ocr/struct_undertake_stamp_area.go
  75. 21 0
      services/ocr/struct_undertake_stamp_areas.go

+ 4 - 0
ChangeLog.txt

@@ -1,3 +1,7 @@
+2019-12-31 Version: v1.60.312
+- Generated 2019-12-30 for `ocr`.
+- First version.
+
 2019-12-31 Version: v1.60.311
 2019-12-31 Version: v1.60.311
 - Generated 2014-08-15 for `Rds`.
 - Generated 2014-08-15 for `Rds`.
 - Supported SQL SERVER support delete backup set according to time range.
 - Supported SQL SERVER support delete backup set according to time range.

+ 129 - 0
services/ocr/client.go

@@ -0,0 +1,129 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"reflect"
+
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider"
+)
+
+// Client is the sdk client struct, each func corresponds to an OpenAPI
+type Client struct {
+	sdk.Client
+}
+
+// SetClientProperty Set Property by Reflect
+func SetClientProperty(client *Client, propertyName string, propertyValue interface{}) {
+	v := reflect.ValueOf(client).Elem()
+	if v.FieldByName(propertyName).IsValid() && v.FieldByName(propertyName).CanSet() {
+		v.FieldByName(propertyName).Set(reflect.ValueOf(propertyValue))
+	}
+}
+
+// SetEndpointDataToClient Set EndpointMap and ENdpointType
+func SetEndpointDataToClient(client *Client) {
+	SetClientProperty(client, "EndpointMap", GetEndpointMap())
+	SetClientProperty(client, "EndpointType", GetEndpointType())
+}
+
+// NewClient creates a sdk client with environment variables
+func NewClient() (client *Client, err error) {
+	client = &Client{}
+	err = client.Init()
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithProvider creates a sdk client with providers
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithProvider(regionId string, providers ...provider.Provider) (client *Client, err error) {
+	client = &Client{}
+	var pc provider.Provider
+	if len(providers) == 0 {
+		pc = provider.DefaultChain
+	} else {
+		pc = provider.NewProviderChain(providers)
+	}
+	err = client.InitWithProviderChain(regionId, pc)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithOptions creates a sdk client with regionId/sdkConfig/credential
+// this is the common api to create a sdk client
+func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithOptions(regionId, config, credential)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithAccessKey is a shortcut to create sdk client with accesskey
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithStsToken is a shortcut to create sdk client with sts token
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn and policy
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArnAndPolicy(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithEcsRamRole(regionId, roleName)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	SetEndpointDataToClient(client)
+	return
+}

+ 20 - 0
services/ocr/endpoint.go

@@ -0,0 +1,20 @@
+package ocr
+
+// EndpointMap Endpoint Data
+var EndpointMap map[string]string
+
+// EndpointType regional or central
+var EndpointType = "regional"
+
+// GetEndpointMap Get Endpoint Data Map
+func GetEndpointMap() map[string]string {
+	if EndpointMap == nil {
+		EndpointMap = map[string]string{}
+	}
+	return EndpointMap
+}
+
+// GetEndpointType Get Endpoint Type Value
+func GetEndpointType() string {
+	return EndpointType
+}

+ 105 - 0
services/ocr/recognize_account_page.go

@@ -0,0 +1,105 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeAccountPage invokes the ocr.RecognizeAccountPage API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizeaccountpage.html
+func (client *Client) RecognizeAccountPage(request *RecognizeAccountPageRequest) (response *RecognizeAccountPageResponse, err error) {
+	response = CreateRecognizeAccountPageResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeAccountPageWithChan invokes the ocr.RecognizeAccountPage API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizeaccountpage.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeAccountPageWithChan(request *RecognizeAccountPageRequest) (<-chan *RecognizeAccountPageResponse, <-chan error) {
+	responseChan := make(chan *RecognizeAccountPageResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeAccountPage(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeAccountPageWithCallback invokes the ocr.RecognizeAccountPage API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizeaccountpage.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeAccountPageWithCallback(request *RecognizeAccountPageRequest, callback func(response *RecognizeAccountPageResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeAccountPageResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeAccountPage(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeAccountPageRequest is the request struct for api RecognizeAccountPage
+type RecognizeAccountPageRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeAccountPageResponse is the response struct for api RecognizeAccountPage
+type RecognizeAccountPageResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeAccountPageRequest creates a request to invoke RecognizeAccountPage API
+func CreateRecognizeAccountPageRequest() (request *RecognizeAccountPageRequest) {
+	request = &RecognizeAccountPageRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeAccountPage", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeAccountPageResponse creates a response to parse from RecognizeAccountPage response
+func CreateRecognizeAccountPageResponse() (response *RecognizeAccountPageResponse) {
+	response = &RecognizeAccountPageResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/ocr/recognize_bank_card.go

@@ -0,0 +1,105 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeBankCard invokes the ocr.RecognizeBankCard API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizebankcard.html
+func (client *Client) RecognizeBankCard(request *RecognizeBankCardRequest) (response *RecognizeBankCardResponse, err error) {
+	response = CreateRecognizeBankCardResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeBankCardWithChan invokes the ocr.RecognizeBankCard API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizebankcard.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeBankCardWithChan(request *RecognizeBankCardRequest) (<-chan *RecognizeBankCardResponse, <-chan error) {
+	responseChan := make(chan *RecognizeBankCardResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeBankCard(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeBankCardWithCallback invokes the ocr.RecognizeBankCard API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizebankcard.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeBankCardWithCallback(request *RecognizeBankCardRequest, callback func(response *RecognizeBankCardResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeBankCardResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeBankCard(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeBankCardRequest is the request struct for api RecognizeBankCard
+type RecognizeBankCardRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeBankCardResponse is the response struct for api RecognizeBankCard
+type RecognizeBankCardResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeBankCardRequest creates a request to invoke RecognizeBankCard API
+func CreateRecognizeBankCardRequest() (request *RecognizeBankCardRequest) {
+	request = &RecognizeBankCardRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeBankCard", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeBankCardResponse creates a response to parse from RecognizeBankCard response
+func CreateRecognizeBankCardResponse() (response *RecognizeBankCardResponse) {
+	response = &RecognizeBankCardResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/ocr/recognize_business_card.go

@@ -0,0 +1,105 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeBusinessCard invokes the ocr.RecognizeBusinessCard API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizebusinesscard.html
+func (client *Client) RecognizeBusinessCard(request *RecognizeBusinessCardRequest) (response *RecognizeBusinessCardResponse, err error) {
+	response = CreateRecognizeBusinessCardResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeBusinessCardWithChan invokes the ocr.RecognizeBusinessCard API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizebusinesscard.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeBusinessCardWithChan(request *RecognizeBusinessCardRequest) (<-chan *RecognizeBusinessCardResponse, <-chan error) {
+	responseChan := make(chan *RecognizeBusinessCardResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeBusinessCard(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeBusinessCardWithCallback invokes the ocr.RecognizeBusinessCard API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizebusinesscard.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeBusinessCardWithCallback(request *RecognizeBusinessCardRequest, callback func(response *RecognizeBusinessCardResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeBusinessCardResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeBusinessCard(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeBusinessCardRequest is the request struct for api RecognizeBusinessCard
+type RecognizeBusinessCardRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeBusinessCardResponse is the response struct for api RecognizeBusinessCard
+type RecognizeBusinessCardResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeBusinessCardRequest creates a request to invoke RecognizeBusinessCard API
+func CreateRecognizeBusinessCardRequest() (request *RecognizeBusinessCardRequest) {
+	request = &RecognizeBusinessCardRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeBusinessCard", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeBusinessCardResponse creates a response to parse from RecognizeBusinessCard response
+func CreateRecognizeBusinessCardResponse() (response *RecognizeBusinessCardResponse) {
+	response = &RecognizeBusinessCardResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/ocr/recognize_business_license.go

@@ -0,0 +1,105 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeBusinessLicense invokes the ocr.RecognizeBusinessLicense API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizebusinesslicense.html
+func (client *Client) RecognizeBusinessLicense(request *RecognizeBusinessLicenseRequest) (response *RecognizeBusinessLicenseResponse, err error) {
+	response = CreateRecognizeBusinessLicenseResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeBusinessLicenseWithChan invokes the ocr.RecognizeBusinessLicense API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizebusinesslicense.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeBusinessLicenseWithChan(request *RecognizeBusinessLicenseRequest) (<-chan *RecognizeBusinessLicenseResponse, <-chan error) {
+	responseChan := make(chan *RecognizeBusinessLicenseResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeBusinessLicense(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeBusinessLicenseWithCallback invokes the ocr.RecognizeBusinessLicense API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizebusinesslicense.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeBusinessLicenseWithCallback(request *RecognizeBusinessLicenseRequest, callback func(response *RecognizeBusinessLicenseResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeBusinessLicenseResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeBusinessLicense(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeBusinessLicenseRequest is the request struct for api RecognizeBusinessLicense
+type RecognizeBusinessLicenseRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeBusinessLicenseResponse is the response struct for api RecognizeBusinessLicense
+type RecognizeBusinessLicenseResponse struct {
+	*responses.BaseResponse
+	RequestId string                         `json:"RequestId" xml:"RequestId"`
+	Data      DataInRecognizeBusinessLicense `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeBusinessLicenseRequest creates a request to invoke RecognizeBusinessLicense API
+func CreateRecognizeBusinessLicenseRequest() (request *RecognizeBusinessLicenseRequest) {
+	request = &RecognizeBusinessLicenseRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeBusinessLicense", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeBusinessLicenseResponse creates a response to parse from RecognizeBusinessLicense response
+func CreateRecognizeBusinessLicenseResponse() (response *RecognizeBusinessLicenseResponse) {
+	response = &RecognizeBusinessLicenseResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/ocr/recognize_character.go

@@ -0,0 +1,107 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeCharacter invokes the ocr.RecognizeCharacter API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizecharacter.html
+func (client *Client) RecognizeCharacter(request *RecognizeCharacterRequest) (response *RecognizeCharacterResponse, err error) {
+	response = CreateRecognizeCharacterResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeCharacterWithChan invokes the ocr.RecognizeCharacter API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizecharacter.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeCharacterWithChan(request *RecognizeCharacterRequest) (<-chan *RecognizeCharacterResponse, <-chan error) {
+	responseChan := make(chan *RecognizeCharacterResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeCharacter(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeCharacterWithCallback invokes the ocr.RecognizeCharacter API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizecharacter.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeCharacterWithCallback(request *RecognizeCharacterRequest, callback func(response *RecognizeCharacterResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeCharacterResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeCharacter(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeCharacterRequest is the request struct for api RecognizeCharacter
+type RecognizeCharacterRequest struct {
+	*requests.RpcRequest
+	ImageType         requests.Integer `position:"Body" name:"ImageType"`
+	OutputProbability requests.Boolean `position:"Body" name:"OutputProbability"`
+	ImageURL          string           `position:"Body" name:"ImageURL"`
+	MinHeight         requests.Integer `position:"Body" name:"MinHeight"`
+}
+
+// RecognizeCharacterResponse is the response struct for api RecognizeCharacter
+type RecognizeCharacterResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeCharacterRequest creates a request to invoke RecognizeCharacter API
+func CreateRecognizeCharacterRequest() (request *RecognizeCharacterRequest) {
+	request = &RecognizeCharacterRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeCharacter", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeCharacterResponse creates a response to parse from RecognizeCharacter response
+func CreateRecognizeCharacterResponse() (response *RecognizeCharacterResponse) {
+	response = &RecognizeCharacterResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/ocr/recognize_driver_license.go

@@ -0,0 +1,106 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeDriverLicense invokes the ocr.RecognizeDriverLicense API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizedriverlicense.html
+func (client *Client) RecognizeDriverLicense(request *RecognizeDriverLicenseRequest) (response *RecognizeDriverLicenseResponse, err error) {
+	response = CreateRecognizeDriverLicenseResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeDriverLicenseWithChan invokes the ocr.RecognizeDriverLicense API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizedriverlicense.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeDriverLicenseWithChan(request *RecognizeDriverLicenseRequest) (<-chan *RecognizeDriverLicenseResponse, <-chan error) {
+	responseChan := make(chan *RecognizeDriverLicenseResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeDriverLicense(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeDriverLicenseWithCallback invokes the ocr.RecognizeDriverLicense API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizedriverlicense.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeDriverLicenseWithCallback(request *RecognizeDriverLicenseRequest, callback func(response *RecognizeDriverLicenseResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeDriverLicenseResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeDriverLicense(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeDriverLicenseRequest is the request struct for api RecognizeDriverLicense
+type RecognizeDriverLicenseRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	Side      string           `position:"Body" name:"Side"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeDriverLicenseResponse is the response struct for api RecognizeDriverLicense
+type RecognizeDriverLicenseResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeDriverLicenseRequest creates a request to invoke RecognizeDriverLicense API
+func CreateRecognizeDriverLicenseRequest() (request *RecognizeDriverLicenseRequest) {
+	request = &RecognizeDriverLicenseRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeDriverLicense", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeDriverLicenseResponse creates a response to parse from RecognizeDriverLicense response
+func CreateRecognizeDriverLicenseResponse() (response *RecognizeDriverLicenseResponse) {
+	response = &RecognizeDriverLicenseResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/ocr/recognize_driving_license.go

@@ -0,0 +1,106 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeDrivingLicense invokes the ocr.RecognizeDrivingLicense API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizedrivinglicense.html
+func (client *Client) RecognizeDrivingLicense(request *RecognizeDrivingLicenseRequest) (response *RecognizeDrivingLicenseResponse, err error) {
+	response = CreateRecognizeDrivingLicenseResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeDrivingLicenseWithChan invokes the ocr.RecognizeDrivingLicense API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizedrivinglicense.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeDrivingLicenseWithChan(request *RecognizeDrivingLicenseRequest) (<-chan *RecognizeDrivingLicenseResponse, <-chan error) {
+	responseChan := make(chan *RecognizeDrivingLicenseResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeDrivingLicense(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeDrivingLicenseWithCallback invokes the ocr.RecognizeDrivingLicense API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizedrivinglicense.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeDrivingLicenseWithCallback(request *RecognizeDrivingLicenseRequest, callback func(response *RecognizeDrivingLicenseResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeDrivingLicenseResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeDrivingLicense(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeDrivingLicenseRequest is the request struct for api RecognizeDrivingLicense
+type RecognizeDrivingLicenseRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	Side      string           `position:"Body" name:"Side"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeDrivingLicenseResponse is the response struct for api RecognizeDrivingLicense
+type RecognizeDrivingLicenseResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeDrivingLicenseRequest creates a request to invoke RecognizeDrivingLicense API
+func CreateRecognizeDrivingLicenseRequest() (request *RecognizeDrivingLicenseRequest) {
+	request = &RecognizeDrivingLicenseRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeDrivingLicense", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeDrivingLicenseResponse creates a response to parse from RecognizeDrivingLicense response
+func CreateRecognizeDrivingLicenseResponse() (response *RecognizeDrivingLicenseResponse) {
+	response = &RecognizeDrivingLicenseResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/ocr/recognize_identity_card.go

@@ -0,0 +1,106 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeIdentityCard invokes the ocr.RecognizeIdentityCard API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizeidentitycard.html
+func (client *Client) RecognizeIdentityCard(request *RecognizeIdentityCardRequest) (response *RecognizeIdentityCardResponse, err error) {
+	response = CreateRecognizeIdentityCardResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeIdentityCardWithChan invokes the ocr.RecognizeIdentityCard API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizeidentitycard.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeIdentityCardWithChan(request *RecognizeIdentityCardRequest) (<-chan *RecognizeIdentityCardResponse, <-chan error) {
+	responseChan := make(chan *RecognizeIdentityCardResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeIdentityCard(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeIdentityCardWithCallback invokes the ocr.RecognizeIdentityCard API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizeidentitycard.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeIdentityCardWithCallback(request *RecognizeIdentityCardRequest, callback func(response *RecognizeIdentityCardResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeIdentityCardResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeIdentityCard(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeIdentityCardRequest is the request struct for api RecognizeIdentityCard
+type RecognizeIdentityCardRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	Side      string           `position:"Body" name:"Side"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeIdentityCardResponse is the response struct for api RecognizeIdentityCard
+type RecognizeIdentityCardResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeIdentityCardRequest creates a request to invoke RecognizeIdentityCard API
+func CreateRecognizeIdentityCardRequest() (request *RecognizeIdentityCardRequest) {
+	request = &RecognizeIdentityCardRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeIdentityCard", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeIdentityCardResponse creates a response to parse from RecognizeIdentityCard response
+func CreateRecognizeIdentityCardResponse() (response *RecognizeIdentityCardResponse) {
+	response = &RecognizeIdentityCardResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/ocr/recognize_license_plate.go

@@ -0,0 +1,105 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeLicensePlate invokes the ocr.RecognizeLicensePlate API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizelicenseplate.html
+func (client *Client) RecognizeLicensePlate(request *RecognizeLicensePlateRequest) (response *RecognizeLicensePlateResponse, err error) {
+	response = CreateRecognizeLicensePlateResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeLicensePlateWithChan invokes the ocr.RecognizeLicensePlate API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizelicenseplate.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeLicensePlateWithChan(request *RecognizeLicensePlateRequest) (<-chan *RecognizeLicensePlateResponse, <-chan error) {
+	responseChan := make(chan *RecognizeLicensePlateResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeLicensePlate(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeLicensePlateWithCallback invokes the ocr.RecognizeLicensePlate API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizelicenseplate.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeLicensePlateWithCallback(request *RecognizeLicensePlateRequest, callback func(response *RecognizeLicensePlateResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeLicensePlateResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeLicensePlate(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeLicensePlateRequest is the request struct for api RecognizeLicensePlate
+type RecognizeLicensePlateRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeLicensePlateResponse is the response struct for api RecognizeLicensePlate
+type RecognizeLicensePlateResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeLicensePlateRequest creates a request to invoke RecognizeLicensePlate API
+func CreateRecognizeLicensePlateRequest() (request *RecognizeLicensePlateRequest) {
+	request = &RecognizeLicensePlateRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeLicensePlate", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeLicensePlateResponse creates a response to parse from RecognizeLicensePlate response
+func CreateRecognizeLicensePlateResponse() (response *RecognizeLicensePlateResponse) {
+	response = &RecognizeLicensePlateResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/ocr/recognize_stamp.go

@@ -0,0 +1,105 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeStamp invokes the ocr.RecognizeStamp API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizestamp.html
+func (client *Client) RecognizeStamp(request *RecognizeStampRequest) (response *RecognizeStampResponse, err error) {
+	response = CreateRecognizeStampResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeStampWithChan invokes the ocr.RecognizeStamp API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizestamp.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeStampWithChan(request *RecognizeStampRequest) (<-chan *RecognizeStampResponse, <-chan error) {
+	responseChan := make(chan *RecognizeStampResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeStamp(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeStampWithCallback invokes the ocr.RecognizeStamp API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizestamp.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeStampWithCallback(request *RecognizeStampRequest, callback func(response *RecognizeStampResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeStampResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeStamp(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeStampRequest is the request struct for api RecognizeStamp
+type RecognizeStampRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeStampResponse is the response struct for api RecognizeStamp
+type RecognizeStampResponse struct {
+	*responses.BaseResponse
+	RequestId string               `json:"RequestId" xml:"RequestId"`
+	Data      DataInRecognizeStamp `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeStampRequest creates a request to invoke RecognizeStamp API
+func CreateRecognizeStampRequest() (request *RecognizeStampRequest) {
+	request = &RecognizeStampRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeStamp", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeStampResponse creates a response to parse from RecognizeStamp response
+func CreateRecognizeStampResponse() (response *RecognizeStampResponse) {
+	response = &RecognizeStampResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 110 - 0
services/ocr/recognize_table.go

@@ -0,0 +1,110 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeTable invokes the ocr.RecognizeTable API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizetable.html
+func (client *Client) RecognizeTable(request *RecognizeTableRequest) (response *RecognizeTableResponse, err error) {
+	response = CreateRecognizeTableResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeTableWithChan invokes the ocr.RecognizeTable API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizetable.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeTableWithChan(request *RecognizeTableRequest) (<-chan *RecognizeTableResponse, <-chan error) {
+	responseChan := make(chan *RecognizeTableResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeTable(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeTableWithCallback invokes the ocr.RecognizeTable API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizetable.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeTableWithCallback(request *RecognizeTableRequest, callback func(response *RecognizeTableResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeTableResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeTable(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeTableRequest is the request struct for api RecognizeTable
+type RecognizeTableRequest struct {
+	*requests.RpcRequest
+	ImageType       requests.Integer `position:"Body" name:"ImageType"`
+	UseFinanceModel requests.Boolean `position:"Body" name:"UseFinanceModel"`
+	SkipDetection   requests.Boolean `position:"Body" name:"SkipDetection"`
+	ImageURL        string           `position:"Body" name:"ImageURL"`
+	OutputFormat    string           `position:"Body" name:"OutputFormat"`
+	AssureDirection requests.Boolean `position:"Body" name:"AssureDirection"`
+	HasLine         requests.Boolean `position:"Body" name:"HasLine"`
+}
+
+// RecognizeTableResponse is the response struct for api RecognizeTable
+type RecognizeTableResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeTableRequest creates a request to invoke RecognizeTable API
+func CreateRecognizeTableRequest() (request *RecognizeTableRequest) {
+	request = &RecognizeTableRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeTable", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeTableResponse creates a response to parse from RecognizeTable response
+func CreateRecognizeTableResponse() (response *RecognizeTableResponse) {
+	response = &RecognizeTableResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/ocr/recognize_taxi_invoice.go

@@ -0,0 +1,105 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeTaxiInvoice invokes the ocr.RecognizeTaxiInvoice API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizetaxiinvoice.html
+func (client *Client) RecognizeTaxiInvoice(request *RecognizeTaxiInvoiceRequest) (response *RecognizeTaxiInvoiceResponse, err error) {
+	response = CreateRecognizeTaxiInvoiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeTaxiInvoiceWithChan invokes the ocr.RecognizeTaxiInvoice API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizetaxiinvoice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeTaxiInvoiceWithChan(request *RecognizeTaxiInvoiceRequest) (<-chan *RecognizeTaxiInvoiceResponse, <-chan error) {
+	responseChan := make(chan *RecognizeTaxiInvoiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeTaxiInvoice(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeTaxiInvoiceWithCallback invokes the ocr.RecognizeTaxiInvoice API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizetaxiinvoice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeTaxiInvoiceWithCallback(request *RecognizeTaxiInvoiceRequest, callback func(response *RecognizeTaxiInvoiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeTaxiInvoiceResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeTaxiInvoice(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeTaxiInvoiceRequest is the request struct for api RecognizeTaxiInvoice
+type RecognizeTaxiInvoiceRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeTaxiInvoiceResponse is the response struct for api RecognizeTaxiInvoice
+type RecognizeTaxiInvoiceResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeTaxiInvoiceRequest creates a request to invoke RecognizeTaxiInvoice API
+func CreateRecognizeTaxiInvoiceRequest() (request *RecognizeTaxiInvoiceRequest) {
+	request = &RecognizeTaxiInvoiceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeTaxiInvoice", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeTaxiInvoiceResponse creates a response to parse from RecognizeTaxiInvoice response
+func CreateRecognizeTaxiInvoiceResponse() (response *RecognizeTaxiInvoiceResponse) {
+	response = &RecognizeTaxiInvoiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/ocr/recognize_train_ticket.go

@@ -0,0 +1,105 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeTrainTicket invokes the ocr.RecognizeTrainTicket API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizetrainticket.html
+func (client *Client) RecognizeTrainTicket(request *RecognizeTrainTicketRequest) (response *RecognizeTrainTicketResponse, err error) {
+	response = CreateRecognizeTrainTicketResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeTrainTicketWithChan invokes the ocr.RecognizeTrainTicket API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizetrainticket.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeTrainTicketWithChan(request *RecognizeTrainTicketRequest) (<-chan *RecognizeTrainTicketResponse, <-chan error) {
+	responseChan := make(chan *RecognizeTrainTicketResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeTrainTicket(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeTrainTicketWithCallback invokes the ocr.RecognizeTrainTicket API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizetrainticket.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeTrainTicketWithCallback(request *RecognizeTrainTicketRequest, callback func(response *RecognizeTrainTicketResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeTrainTicketResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeTrainTicket(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeTrainTicketRequest is the request struct for api RecognizeTrainTicket
+type RecognizeTrainTicketRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Body" name:"ImageType"`
+	ImageURL  string           `position:"Body" name:"ImageURL"`
+}
+
+// RecognizeTrainTicketResponse is the response struct for api RecognizeTrainTicket
+type RecognizeTrainTicketResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeTrainTicketRequest creates a request to invoke RecognizeTrainTicket API
+func CreateRecognizeTrainTicketRequest() (request *RecognizeTrainTicketRequest) {
+	request = &RecognizeTrainTicketRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeTrainTicket", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeTrainTicketResponse creates a response to parse from RecognizeTrainTicket response
+func CreateRecognizeTrainTicketResponse() (response *RecognizeTrainTicketResponse) {
+	response = &RecognizeTrainTicketResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/ocr/recognize_vin_code.go

@@ -0,0 +1,105 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RecognizeVINCode invokes the ocr.RecognizeVINCode API synchronously
+// api document: https://help.aliyun.com/api/ocr/recognizevincode.html
+func (client *Client) RecognizeVINCode(request *RecognizeVINCodeRequest) (response *RecognizeVINCodeResponse, err error) {
+	response = CreateRecognizeVINCodeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RecognizeVINCodeWithChan invokes the ocr.RecognizeVINCode API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizevincode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeVINCodeWithChan(request *RecognizeVINCodeRequest) (<-chan *RecognizeVINCodeResponse, <-chan error) {
+	responseChan := make(chan *RecognizeVINCodeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RecognizeVINCode(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RecognizeVINCodeWithCallback invokes the ocr.RecognizeVINCode API asynchronously
+// api document: https://help.aliyun.com/api/ocr/recognizevincode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RecognizeVINCodeWithCallback(request *RecognizeVINCodeRequest, callback func(response *RecognizeVINCodeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RecognizeVINCodeResponse
+		var err error
+		defer close(result)
+		response, err = client.RecognizeVINCode(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RecognizeVINCodeRequest is the request struct for api RecognizeVINCode
+type RecognizeVINCodeRequest struct {
+	*requests.RpcRequest
+	ImageType requests.Integer `position:"Query" name:"ImageType"`
+	ImageURL  string           `position:"Query" name:"ImageURL"`
+}
+
+// RecognizeVINCodeResponse is the response struct for api RecognizeVINCode
+type RecognizeVINCodeResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateRecognizeVINCodeRequest creates a request to invoke RecognizeVINCode API
+func CreateRecognizeVINCodeRequest() (request *RecognizeVINCodeRequest) {
+	request = &RecognizeVINCodeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("ocr", "2019-12-30", "RecognizeVINCode", "ocr", "openAPI")
+	return
+}
+
+// CreateRecognizeVINCodeResponse creates a response to parse from RecognizeVINCode response
+func CreateRecognizeVINCodeResponse() (response *RecognizeVINCodeResponse) {
+	response = &RecognizeVINCodeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 21 - 0
services/ocr/struct_addresses.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Addresses is a nested struct in ocr response
+type Addresses struct {
+	Address []string `json:"Address" xml:"Address"`
+}

+ 34 - 0
services/ocr/struct_back_result.go

@@ -0,0 +1,34 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// BackResult is a nested struct in ocr response
+type BackResult struct {
+	Issue                     string `json:"Issue" xml:"Issue"`
+	ApprovedLoad              string `json:"ApprovedLoad" xml:"ApprovedLoad"`
+	EndDate                   string `json:"EndDate" xml:"EndDate"`
+	PlateNumber               string `json:"PlateNumber" xml:"PlateNumber"`
+	EnergyType                string `json:"EnergyType" xml:"EnergyType"`
+	StartDate                 string `json:"StartDate" xml:"StartDate"`
+	OverallDimension          string `json:"OverallDimension" xml:"OverallDimension"`
+	TractionMass              string `json:"TractionMass" xml:"TractionMass"`
+	InspectionRecord          string `json:"InspectionRecord" xml:"InspectionRecord"`
+	UnladenMass               string `json:"UnladenMass" xml:"UnladenMass"`
+	ArchiveNumber             string `json:"ArchiveNumber" xml:"ArchiveNumber"`
+	FileNumber                string `json:"FileNumber" xml:"FileNumber"`
+	ApprovedPassengerCapacity string `json:"ApprovedPassengerCapacity" xml:"ApprovedPassengerCapacity"`
+	GrossMass                 string `json:"GrossMass" xml:"GrossMass"`
+}

+ 22 - 0
services/ocr/struct_card_area.go

@@ -0,0 +1,22 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// CardArea is a nested struct in ocr response
+type CardArea struct {
+	X float64 `json:"X" xml:"X"`
+	Y float64 `json:"Y" xml:"Y"`
+}

+ 21 - 0
services/ocr/struct_card_areas.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// CardAreas is a nested struct in ocr response
+type CardAreas struct {
+	CardArea []CardArea `json:"CardArea" xml:"CardArea"`
+}

+ 21 - 0
services/ocr/struct_cell_phone_numbers.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// CellPhoneNumbers is a nested struct in ocr response
+type CellPhoneNumbers struct {
+	CellPhoneNumber []string `json:"CellPhoneNumber" xml:"CellPhoneNumber"`
+}

+ 22 - 0
services/ocr/struct_center.go

@@ -0,0 +1,22 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Center is a nested struct in ocr response
+type Center struct {
+	X float64 `json:"X" xml:"X"`
+	Y float64 `json:"Y" xml:"Y"`
+}

+ 21 - 0
services/ocr/struct_companies.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Companies is a nested struct in ocr response
+type Companies struct {
+	Company []string `json:"Company" xml:"Company"`
+}

+ 60 - 0
services/ocr/struct_data.go

@@ -0,0 +1,60 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Data is a nested struct in ocr response
+type Data struct {
+	Name                string               `json:"Name" xml:"Name"`
+	BankName            string               `json:"BankName" xml:"BankName"`
+	IDNumber            string               `json:"IDNumber" xml:"IDNumber"`
+	Date                string               `json:"Date" xml:"Date"`
+	Seat                string               `json:"Seat" xml:"Seat"`
+	FileContent         string               `json:"FileContent" xml:"FileContent"`
+	CardNumber          string               `json:"CardNumber" xml:"CardNumber"`
+	VinCode             string               `json:"VinCode" xml:"VinCode"`
+	Angle               float64              `json:"Angle" xml:"Angle"`
+	BirthPlace          string               `json:"BirthPlace" xml:"BirthPlace"`
+	Nationality         string               `json:"Nationality" xml:"Nationality"`
+	NativePlace         string               `json:"NativePlace" xml:"NativePlace"`
+	ValidDate           string               `json:"ValidDate" xml:"ValidDate"`
+	Destination         string               `json:"Destination" xml:"Destination"`
+	Level               string               `json:"Level" xml:"Level"`
+	Price               float64              `json:"Price" xml:"Price"`
+	Relation            string               `json:"Relation" xml:"Relation"`
+	Number              string               `json:"Number" xml:"Number"`
+	DepartureStation    string               `json:"DepartureStation" xml:"DepartureStation"`
+	Gender              string               `json:"Gender" xml:"Gender"`
+	BirthDate           string               `json:"BirthDate" xml:"BirthDate"`
+	OfficePhoneNumbers  []string             `json:"OfficePhoneNumbers" xml:"OfficePhoneNumbers"`
+	Departments         []string             `json:"Departments" xml:"Departments"`
+	Companies           []string             `json:"Companies" xml:"Companies"`
+	Titles              []string             `json:"Titles" xml:"Titles"`
+	Emails              []string             `json:"Emails" xml:"Emails"`
+	CellPhoneNumbers    []string             `json:"CellPhoneNumbers" xml:"CellPhoneNumbers"`
+	Addresses           []string             `json:"Addresses" xml:"Addresses"`
+	BackResult          BackResult           `json:"BackResult" xml:"BackResult"`
+	TitleArea           TitleArea            `json:"TitleArea" xml:"TitleArea"`
+	FaceResult          FaceResult           `json:"FaceResult" xml:"FaceResult"`
+	FrontResult         FrontResult          `json:"FrontResult" xml:"FrontResult"`
+	UndertakeStampAreas []UndertakeStampArea `json:"UndertakeStampAreas" xml:"UndertakeStampAreas"`
+	Tables              []Table              `json:"Tables" xml:"Tables"`
+	InvalidStampAreas   []InvalidStampArea   `json:"InvalidStampAreas" xml:"InvalidStampAreas"`
+	Invoices            []Invoice            `json:"Invoices" xml:"Invoices"`
+	RegisterStampAreas  []RegisterStampArea  `json:"RegisterStampAreas" xml:"RegisterStampAreas"`
+	Results             []Result             `json:"Results" xml:"Results"`
+	OtherStampAreas     []OtherStampArea     `json:"OtherStampAreas" xml:"OtherStampAreas"`
+	Plates              []Plate              `json:"Plates" xml:"Plates"`
+}

+ 34 - 0
services/ocr/struct_data_in_recognize_business_license.go

@@ -0,0 +1,34 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DataInRecognizeBusinessLicense is a nested struct in ocr response
+type DataInRecognizeBusinessLicense struct {
+	Angle          string `json:"Angle" xml:"Angle"`
+	RegisterNumber string `json:"RegisterNumber" xml:"RegisterNumber"`
+	Name           string `json:"Name" xml:"Name"`
+	Type           string `json:"Type" xml:"Type"`
+	LegalPerson    string `json:"LegalPerson" xml:"LegalPerson"`
+	EstablishDate  string `json:"EstablishDate" xml:"EstablishDate"`
+	ValidPeriod    string `json:"ValidPeriod" xml:"ValidPeriod"`
+	Address        string `json:"Address" xml:"Address"`
+	Capital        string `json:"Capital" xml:"Capital"`
+	Business       string `json:"Business" xml:"Business"`
+	Emblem         Emblem `json:"Emblem" xml:"Emblem"`
+	Title          Title  `json:"Title" xml:"Title"`
+	Stamp          Stamp  `json:"Stamp" xml:"Stamp"`
+	QRCode         QRCode `json:"QRCode" xml:"QRCode"`
+}

+ 21 - 0
services/ocr/struct_data_in_recognize_stamp.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DataInRecognizeStamp is a nested struct in ocr response
+type DataInRecognizeStamp struct {
+	Results []ResultsItem `json:"Results" xml:"Results"`
+}

+ 21 - 0
services/ocr/struct_departments.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Departments is a nested struct in ocr response
+type Departments struct {
+	Department []string `json:"Department" xml:"Department"`
+}

+ 21 - 0
services/ocr/struct_emails.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Emails is a nested struct in ocr response
+type Emails struct {
+	Email []string `json:"Email" xml:"Email"`
+}

+ 24 - 0
services/ocr/struct_emblem.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Emblem is a nested struct in ocr response
+type Emblem struct {
+	Top    int `json:"Top" xml:"Top"`
+	Left   int `json:"Left" xml:"Left"`
+	Height int `json:"Height" xml:"Height"`
+	Width  int `json:"Width" xml:"Width"`
+}

+ 22 - 0
services/ocr/struct_face_rect_vertice.go

@@ -0,0 +1,22 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// FaceRectVertice is a nested struct in ocr response
+type FaceRectVertice struct {
+	X float64 `json:"X" xml:"X"`
+	Y float64 `json:"Y" xml:"Y"`
+}

+ 21 - 0
services/ocr/struct_face_rect_vertices.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// FaceRectVertices is a nested struct in ocr response
+type FaceRectVertices struct {
+	FaceRectVertice []FaceRectVertice `json:"FaceRectVertice" xml:"FaceRectVertice"`
+}

+ 23 - 0
services/ocr/struct_face_rectangle.go

@@ -0,0 +1,23 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// FaceRectangle is a nested struct in ocr response
+type FaceRectangle struct {
+	Angle  float64 `json:"Angle" xml:"Angle"`
+	Center Center  `json:"Center" xml:"Center"`
+	Size   Size    `json:"Size" xml:"Size"`
+}

+ 35 - 0
services/ocr/struct_face_result.go

@@ -0,0 +1,35 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// FaceResult is a nested struct in ocr response
+type FaceResult struct {
+	Name          string `json:"Name" xml:"Name"`
+	EndDate       string `json:"EndDate" xml:"EndDate"`
+	EngineNumber  string `json:"EngineNumber" xml:"EngineNumber"`
+	VehicleType   string `json:"VehicleType" xml:"VehicleType"`
+	PlateNumber   string `json:"PlateNumber" xml:"PlateNumber"`
+	Owner         string `json:"Owner" xml:"Owner"`
+	Vin           string `json:"Vin" xml:"Vin"`
+	UseCharacter  string `json:"UseCharacter" xml:"UseCharacter"`
+	Address       string `json:"Address" xml:"Address"`
+	StartDate     string `json:"StartDate" xml:"StartDate"`
+	Gender        string `json:"Gender" xml:"Gender"`
+	LicenseNumber string `json:"LicenseNumber" xml:"LicenseNumber"`
+	Model         string `json:"Model" xml:"Model"`
+	RegisterDate  string `json:"RegisterDate" xml:"RegisterDate"`
+	IssueDate     string `json:"IssueDate" xml:"IssueDate"`
+}

+ 29 - 0
services/ocr/struct_front_result.go

@@ -0,0 +1,29 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// FrontResult is a nested struct in ocr response
+type FrontResult struct {
+	Address          string            `json:"Address" xml:"Address"`
+	Name             string            `json:"Name" xml:"Name"`
+	Nationality      string            `json:"Nationality" xml:"Nationality"`
+	IDNumber         string            `json:"IDNumber" xml:"IDNumber"`
+	Gender           string            `json:"Gender" xml:"Gender"`
+	BirthDate        string            `json:"BirthDate" xml:"BirthDate"`
+	FaceRectangle    FaceRectangle     `json:"FaceRectangle" xml:"FaceRectangle"`
+	CardAreas        []CardArea        `json:"CardAreas" xml:"CardAreas"`
+	FaceRectVertices []FaceRectVertice `json:"FaceRectVertices" xml:"FaceRectVertices"`
+}

+ 21 - 0
services/ocr/struct_general_text.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// GeneralText is a nested struct in ocr response
+type GeneralText struct {
+	GeneralTextItem []GeneralTextItem `json:"GeneralText" xml:"GeneralText"`
+}

+ 22 - 0
services/ocr/struct_general_text_item.go

@@ -0,0 +1,22 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// GeneralTextItem is a nested struct in ocr response
+type GeneralTextItem struct {
+	Content    string  `json:"Content" xml:"Content"`
+	Confidence float64 `json:"Confidence" xml:"Confidence"`
+}

+ 24 - 0
services/ocr/struct_invalid_stamp_area.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// InvalidStampArea is a nested struct in ocr response
+type InvalidStampArea struct {
+	Left   int `json:"Left" xml:"Left"`
+	Top    int `json:"Top" xml:"Top"`
+	Height int `json:"Height" xml:"Height"`
+	Width  int `json:"Width" xml:"Width"`
+}

+ 21 - 0
services/ocr/struct_invalid_stamp_areas.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// InvalidStampAreas is a nested struct in ocr response
+type InvalidStampAreas struct {
+	InvalidStampArea []InvalidStampArea `json:"InvalidStampArea" xml:"InvalidStampArea"`
+}

+ 23 - 0
services/ocr/struct_invoice.go

@@ -0,0 +1,23 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Invoice is a nested struct in ocr response
+type Invoice struct {
+	RotateType int        `json:"RotateType" xml:"RotateType"`
+	InvoiceRoi InvoiceRoi `json:"InvoiceRoi" xml:"InvoiceRoi"`
+	Items      []Item     `json:"Items" xml:"Items"`
+}

+ 24 - 0
services/ocr/struct_invoice_roi.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// InvoiceRoi is a nested struct in ocr response
+type InvoiceRoi struct {
+	H float64 `json:"H" xml:"H"`
+	W float64 `json:"W" xml:"W"`
+	X float64 `json:"X" xml:"X"`
+	Y float64 `json:"Y" xml:"Y"`
+}

+ 21 - 0
services/ocr/struct_invoices.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Invoices is a nested struct in ocr response
+type Invoices struct {
+	Invoice []Invoice `json:"Invoice" xml:"Invoice"`
+}

+ 22 - 0
services/ocr/struct_item.go

@@ -0,0 +1,22 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Item is a nested struct in ocr response
+type Item struct {
+	Text    string  `json:"Text" xml:"Text"`
+	ItemRoi ItemRoi `json:"ItemRoi" xml:"ItemRoi"`
+}

+ 23 - 0
services/ocr/struct_item_roi.go

@@ -0,0 +1,23 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemRoi is a nested struct in ocr response
+type ItemRoi struct {
+	Angle  float64 `json:"Angle" xml:"Angle"`
+	Center Center  `json:"Center" xml:"Center"`
+	Size   Size    `json:"Size" xml:"Size"`
+}

+ 21 - 0
services/ocr/struct_items.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Items is a nested struct in ocr response
+type Items struct {
+	Item []Item `json:"Item" xml:"Item"`
+}

+ 21 - 0
services/ocr/struct_office_phone_numbers.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// OfficePhoneNumbers is a nested struct in ocr response
+type OfficePhoneNumbers struct {
+	OfficePhoneNumber []string `json:"OfficePhoneNumber" xml:"OfficePhoneNumber"`
+}

+ 24 - 0
services/ocr/struct_other_stamp_area.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// OtherStampArea is a nested struct in ocr response
+type OtherStampArea struct {
+	Left   int `json:"Left" xml:"Left"`
+	Top    int `json:"Top" xml:"Top"`
+	Height int `json:"Height" xml:"Height"`
+	Width  int `json:"Width" xml:"Width"`
+}

+ 21 - 0
services/ocr/struct_other_stamp_areas.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// OtherStampAreas is a nested struct in ocr response
+type OtherStampAreas struct {
+	OtherStampArea []OtherStampArea `json:"OtherStampArea" xml:"OtherStampArea"`
+}

+ 25 - 0
services/ocr/struct_plate.go

@@ -0,0 +1,25 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Plate is a nested struct in ocr response
+type Plate struct {
+	Confidence          float64 `json:"Confidence" xml:"Confidence"`
+	PlateNumber         string  `json:"PlateNumber" xml:"PlateNumber"`
+	PlateType           string  `json:"PlateType" xml:"PlateType"`
+	PlateTypeConfidence float64 `json:"PlateTypeConfidence" xml:"PlateTypeConfidence"`
+	Roi                 Roi     `json:"Roi" xml:"Roi"`
+}

+ 21 - 0
services/ocr/struct_plates.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Plates is a nested struct in ocr response
+type Plates struct {
+	Plate []Plate `json:"Plate" xml:"Plate"`
+}

+ 24 - 0
services/ocr/struct_qr_code.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// QRCode is a nested struct in ocr response
+type QRCode struct {
+	Top    int `json:"Top" xml:"Top"`
+	Left   int `json:"Left" xml:"Left"`
+	Height int `json:"Height" xml:"Height"`
+	Width  int `json:"Width" xml:"Width"`
+}

+ 24 - 0
services/ocr/struct_register_stamp_area.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// RegisterStampArea is a nested struct in ocr response
+type RegisterStampArea struct {
+	Left   int `json:"Left" xml:"Left"`
+	Top    int `json:"Top" xml:"Top"`
+	Height int `json:"Height" xml:"Height"`
+	Width  int `json:"Width" xml:"Width"`
+}

+ 21 - 0
services/ocr/struct_register_stamp_areas.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// RegisterStampAreas is a nested struct in ocr response
+type RegisterStampAreas struct {
+	RegisterStampArea []RegisterStampArea `json:"RegisterStampArea" xml:"RegisterStampArea"`
+}

+ 23 - 0
services/ocr/struct_result.go

@@ -0,0 +1,23 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Result is a nested struct in ocr response
+type Result struct {
+	Probability    float64         `json:"Probability" xml:"Probability"`
+	Text           string          `json:"Text" xml:"Text"`
+	TextRectangles []TextRectangle `json:"TextRectangles" xml:"TextRectangles"`
+}

+ 21 - 0
services/ocr/struct_results_in_recognize_character.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ResultsInRecognizeCharacter is a nested struct in ocr response
+type ResultsInRecognizeCharacter struct {
+	Result []Result `json:"Result" xml:"Result"`
+}

+ 21 - 0
services/ocr/struct_results_in_recognize_stamp.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ResultsInRecognizeStamp is a nested struct in ocr response
+type ResultsInRecognizeStamp struct {
+	ResultsItem []ResultsItem `json:"Results" xml:"Results"`
+}

+ 23 - 0
services/ocr/struct_results_item.go

@@ -0,0 +1,23 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ResultsItem is a nested struct in ocr response
+type ResultsItem struct {
+	Roi         Roi               `json:"Roi" xml:"Roi"`
+	Text        Text              `json:"Text" xml:"Text"`
+	GeneralText []GeneralTextItem `json:"GeneralText" xml:"GeneralText"`
+}

+ 28 - 0
services/ocr/struct_roi.go

@@ -0,0 +1,28 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Roi is a nested struct in ocr response
+type Roi struct {
+	H      int `json:"H" xml:"H"`
+	X      int `json:"X" xml:"X"`
+	W      int `json:"W" xml:"W"`
+	Y      int `json:"Y" xml:"Y"`
+	Width  int `json:"Width" xml:"Width"`
+	Height int `json:"Height" xml:"Height"`
+	Top    int `json:"Top" xml:"Top"`
+	Left   int `json:"Left" xml:"Left"`
+}

+ 24 - 0
services/ocr/struct_size.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Size is a nested struct in ocr response
+type Size struct {
+	H      float64 `json:"H" xml:"H"`
+	W      float64 `json:"W" xml:"W"`
+	Height float64 `json:"Height" xml:"Height"`
+	Width  float64 `json:"Width" xml:"Width"`
+}

+ 24 - 0
services/ocr/struct_stamp.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Stamp is a nested struct in ocr response
+type Stamp struct {
+	Top    int `json:"Top" xml:"Top"`
+	Left   int `json:"Left" xml:"Left"`
+	Height int `json:"Height" xml:"Height"`
+	Width  int `json:"Width" xml:"Width"`
+}

+ 23 - 0
services/ocr/struct_table.go

@@ -0,0 +1,23 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Table is a nested struct in ocr response
+type Table struct {
+	Head      string     `json:"Head" xml:"Head"`
+	Tail      string     `json:"Tail" xml:"Tail"`
+	TableRows []TableRow `json:"TableRows" xml:"TableRows"`
+}

+ 27 - 0
services/ocr/struct_table_column.go

@@ -0,0 +1,27 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TableColumn is a nested struct in ocr response
+type TableColumn struct {
+	StartColumn int      `json:"StartColumn" xml:"StartColumn"`
+	StartRow    int      `json:"StartRow" xml:"StartRow"`
+	EndColumn   int      `json:"EndColumn" xml:"EndColumn"`
+	EndRow      int      `json:"EndRow" xml:"EndRow"`
+	Height      int      `json:"Height" xml:"Height"`
+	Width       int      `json:"Width" xml:"Width"`
+	Texts       []string `json:"Texts" xml:"Texts"`
+}

+ 21 - 0
services/ocr/struct_table_columns.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TableColumns is a nested struct in ocr response
+type TableColumns struct {
+	TableColumn []TableColumn `json:"TableColumn" xml:"TableColumn"`
+}

+ 21 - 0
services/ocr/struct_table_row.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TableRow is a nested struct in ocr response
+type TableRow struct {
+	TableColumns []TableColumn `json:"TableColumns" xml:"TableColumns"`
+}

+ 21 - 0
services/ocr/struct_table_rows.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TableRows is a nested struct in ocr response
+type TableRows struct {
+	TableRow []TableRow `json:"TableRow" xml:"TableRow"`
+}

+ 21 - 0
services/ocr/struct_tables.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Tables is a nested struct in ocr response
+type Tables struct {
+	Table []Table `json:"Table" xml:"Table"`
+}

+ 22 - 0
services/ocr/struct_text.go

@@ -0,0 +1,22 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Text is a nested struct in ocr response
+type Text struct {
+	Content    string  `json:"Content" xml:"Content"`
+	Confidence float64 `json:"Confidence" xml:"Confidence"`
+}

+ 25 - 0
services/ocr/struct_text_rectangle.go

@@ -0,0 +1,25 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TextRectangle is a nested struct in ocr response
+type TextRectangle struct {
+	Angle  int `json:"Angle" xml:"Angle"`
+	Left   int `json:"Left" xml:"Left"`
+	Top    int `json:"Top" xml:"Top"`
+	Width  int `json:"Width" xml:"Width"`
+	Height int `json:"Height" xml:"Height"`
+}

+ 21 - 0
services/ocr/struct_text_rectangles.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TextRectangles is a nested struct in ocr response
+type TextRectangles struct {
+	TextRectangle []TextRectangle `json:"TextRectangle" xml:"TextRectangle"`
+}

+ 21 - 0
services/ocr/struct_texts.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Texts is a nested struct in ocr response
+type Texts struct {
+	Text []string `json:"Text" xml:"Text"`
+}

+ 24 - 0
services/ocr/struct_title.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Title is a nested struct in ocr response
+type Title struct {
+	Top    int `json:"Top" xml:"Top"`
+	Left   int `json:"Left" xml:"Left"`
+	Height int `json:"Height" xml:"Height"`
+	Width  int `json:"Width" xml:"Width"`
+}

+ 24 - 0
services/ocr/struct_title_area.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TitleArea is a nested struct in ocr response
+type TitleArea struct {
+	Left   int `json:"Left" xml:"Left"`
+	Top    int `json:"Top" xml:"Top"`
+	Height int `json:"Height" xml:"Height"`
+	Width  int `json:"Width" xml:"Width"`
+}

+ 21 - 0
services/ocr/struct_titles.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Titles is a nested struct in ocr response
+type Titles struct {
+	Title []string `json:"Title" xml:"Title"`
+}

+ 24 - 0
services/ocr/struct_undertake_stamp_area.go

@@ -0,0 +1,24 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// UndertakeStampArea is a nested struct in ocr response
+type UndertakeStampArea struct {
+	Left   int `json:"Left" xml:"Left"`
+	Top    int `json:"Top" xml:"Top"`
+	Height int `json:"Height" xml:"Height"`
+	Width  int `json:"Width" xml:"Width"`
+}

+ 21 - 0
services/ocr/struct_undertake_stamp_areas.go

@@ -0,0 +1,21 @@
+package ocr
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// UndertakeStampAreas is a nested struct in ocr response
+type UndertakeStampAreas struct {
+	UndertakeStampArea []UndertakeStampArea `json:"UndertakeStampArea" xml:"UndertakeStampArea"`
+}