imageseg-20191230/client/client.go (4,008 lines of code) (raw):

// This file is auto-generated, don't edit it. Thanks. package client import ( openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client" endpointutil "github.com/alibabacloud-go/endpoint-util/service" openapiutil "github.com/alibabacloud-go/openapi-util/service" openplatform "github.com/alibabacloud-go/openplatform-20191219/v2/client" fileform "github.com/alibabacloud-go/tea-fileform/service" oss "github.com/alibabacloud-go/tea-oss-sdk/client" ossutil "github.com/alibabacloud-go/tea-oss-utils/service" util "github.com/alibabacloud-go/tea-utils/v2/service" "github.com/alibabacloud-go/tea/tea" "io" ) type ChangeSkyRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/ChangeSky/ChangeSky2.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/ChangeSky/ChangeSky6.jpg ReplaceImageURL *string `json:"ReplaceImageURL,omitempty" xml:"ReplaceImageURL,omitempty"` } func (s ChangeSkyRequest) String() string { return tea.Prettify(s) } func (s ChangeSkyRequest) GoString() string { return s.String() } func (s *ChangeSkyRequest) SetImageURL(v string) *ChangeSkyRequest { s.ImageURL = &v return s } func (s *ChangeSkyRequest) SetReplaceImageURL(v string) *ChangeSkyRequest { s.ReplaceImageURL = &v return s } type ChangeSkyAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/ChangeSky/ChangeSky2.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/ChangeSky/ChangeSky6.jpg ReplaceImageURLObject io.Reader `json:"ReplaceImageURL,omitempty" xml:"ReplaceImageURL,omitempty"` } func (s ChangeSkyAdvanceRequest) String() string { return tea.Prettify(s) } func (s ChangeSkyAdvanceRequest) GoString() string { return s.String() } func (s *ChangeSkyAdvanceRequest) SetImageURLObject(v io.Reader) *ChangeSkyAdvanceRequest { s.ImageURLObject = v return s } func (s *ChangeSkyAdvanceRequest) SetReplaceImageURLObject(v io.Reader) *ChangeSkyAdvanceRequest { s.ReplaceImageURLObject = v return s } type ChangeSkyResponseBody struct { Data *ChangeSkyResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // F9D60817-EC5A-4BAC-9092-4AD42220CFA8 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s ChangeSkyResponseBody) String() string { return tea.Prettify(s) } func (s ChangeSkyResponseBody) GoString() string { return s.String() } func (s *ChangeSkyResponseBody) SetData(v *ChangeSkyResponseBodyData) *ChangeSkyResponseBody { s.Data = v return s } func (s *ChangeSkyResponseBody) SetRequestId(v string) *ChangeSkyResponseBody { s.RequestId = &v return s } type ChangeSkyResponseBodyData struct { // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_skySegmentator/2020-7-24/invi_skySegmentator_015955791588111000000_5pn2QM.jpg?Expires=1595580958&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=Sq4po8h3WAj%2BBFrCgTP3ghlXn4**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s ChangeSkyResponseBodyData) String() string { return tea.Prettify(s) } func (s ChangeSkyResponseBodyData) GoString() string { return s.String() } func (s *ChangeSkyResponseBodyData) SetImageURL(v string) *ChangeSkyResponseBodyData { s.ImageURL = &v return s } type ChangeSkyResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *ChangeSkyResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s ChangeSkyResponse) String() string { return tea.Prettify(s) } func (s ChangeSkyResponse) GoString() string { return s.String() } func (s *ChangeSkyResponse) SetHeaders(v map[string]*string) *ChangeSkyResponse { s.Headers = v return s } func (s *ChangeSkyResponse) SetStatusCode(v int32) *ChangeSkyResponse { s.StatusCode = &v return s } func (s *ChangeSkyResponse) SetBody(v *ChangeSkyResponseBody) *ChangeSkyResponse { s.Body = v return s } type GetAsyncJobResultRequest struct { // This parameter is required. // // example: // // E75FE679-0303-4DD1-8252-1143B4FA8A27 JobId *string `json:"JobId,omitempty" xml:"JobId,omitempty"` } func (s GetAsyncJobResultRequest) String() string { return tea.Prettify(s) } func (s GetAsyncJobResultRequest) GoString() string { return s.String() } func (s *GetAsyncJobResultRequest) SetJobId(v string) *GetAsyncJobResultRequest { s.JobId = &v return s } type GetAsyncJobResultResponseBody struct { Data *GetAsyncJobResultResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // 43A0AEB6-45F4-4138-8E89-E1A5D63200E3 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s GetAsyncJobResultResponseBody) String() string { return tea.Prettify(s) } func (s GetAsyncJobResultResponseBody) GoString() string { return s.String() } func (s *GetAsyncJobResultResponseBody) SetData(v *GetAsyncJobResultResponseBodyData) *GetAsyncJobResultResponseBody { s.Data = v return s } func (s *GetAsyncJobResultResponseBody) SetRequestId(v string) *GetAsyncJobResultResponseBody { s.RequestId = &v return s } type GetAsyncJobResultResponseBodyData struct { // example: // // InvalidParameter ErrorCode *string `json:"ErrorCode,omitempty" xml:"ErrorCode,omitempty"` // example: // // paramsIllegal ErrorMessage *string `json:"ErrorMessage,omitempty" xml:"ErrorMessage,omitempty"` // example: // // 49E2CC28-ED1D-4CC5-854D-7D0AE2B20976 JobId *string `json:"JobId,omitempty" xml:"JobId,omitempty"` // example: // // {"ImageUrl":"http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_/2020-4-2/invi__015858226731531000018_UE7B9p.png?Expires=1585824473&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSR****&Signature=etyeYQQ%2BWAyQTqQKd8Xq0GiOW****"} Result *string `json:"Result,omitempty" xml:"Result,omitempty"` // example: // // PROCESS_SUCCESS Status *string `json:"Status,omitempty" xml:"Status,omitempty"` } func (s GetAsyncJobResultResponseBodyData) String() string { return tea.Prettify(s) } func (s GetAsyncJobResultResponseBodyData) GoString() string { return s.String() } func (s *GetAsyncJobResultResponseBodyData) SetErrorCode(v string) *GetAsyncJobResultResponseBodyData { s.ErrorCode = &v return s } func (s *GetAsyncJobResultResponseBodyData) SetErrorMessage(v string) *GetAsyncJobResultResponseBodyData { s.ErrorMessage = &v return s } func (s *GetAsyncJobResultResponseBodyData) SetJobId(v string) *GetAsyncJobResultResponseBodyData { s.JobId = &v return s } func (s *GetAsyncJobResultResponseBodyData) SetResult(v string) *GetAsyncJobResultResponseBodyData { s.Result = &v return s } func (s *GetAsyncJobResultResponseBodyData) SetStatus(v string) *GetAsyncJobResultResponseBodyData { s.Status = &v return s } type GetAsyncJobResultResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *GetAsyncJobResultResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s GetAsyncJobResultResponse) String() string { return tea.Prettify(s) } func (s GetAsyncJobResultResponse) GoString() string { return s.String() } func (s *GetAsyncJobResultResponse) SetHeaders(v map[string]*string) *GetAsyncJobResultResponse { s.Headers = v return s } func (s *GetAsyncJobResultResponse) SetStatusCode(v int32) *GetAsyncJobResultResponse { s.StatusCode = &v return s } func (s *GetAsyncJobResultResponse) SetBody(v *GetAsyncJobResultResponseBody) *GetAsyncJobResultResponse { s.Body = v return s } type ParseFaceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/ParseFace/ParseFace1.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s ParseFaceRequest) String() string { return tea.Prettify(s) } func (s ParseFaceRequest) GoString() string { return s.String() } func (s *ParseFaceRequest) SetImageURL(v string) *ParseFaceRequest { s.ImageURL = &v return s } type ParseFaceAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/ParseFace/ParseFace1.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s ParseFaceAdvanceRequest) String() string { return tea.Prettify(s) } func (s ParseFaceAdvanceRequest) GoString() string { return s.String() } func (s *ParseFaceAdvanceRequest) SetImageURLObject(v io.Reader) *ParseFaceAdvanceRequest { s.ImageURLObject = v return s } type ParseFaceResponseBody struct { Data *ParseFaceResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // D6C24839-91A7-41DA-B31F-98F08EF80CC0 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s ParseFaceResponseBody) String() string { return tea.Prettify(s) } func (s ParseFaceResponseBody) GoString() string { return s.String() } func (s *ParseFaceResponseBody) SetData(v *ParseFaceResponseBodyData) *ParseFaceResponseBody { s.Data = v return s } func (s *ParseFaceResponseBody) SetRequestId(v string) *ParseFaceResponseBody { s.RequestId = &v return s } type ParseFaceResponseBodyData struct { Elements []*ParseFaceResponseBodyDataElements `json:"Elements,omitempty" xml:"Elements,omitempty" type:"Repeated"` // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/ParseFace/ParseFace1.jpg OriginImageURL *string `json:"OriginImageURL,omitempty" xml:"OriginImageURL,omitempty"` } func (s ParseFaceResponseBodyData) String() string { return tea.Prettify(s) } func (s ParseFaceResponseBodyData) GoString() string { return s.String() } func (s *ParseFaceResponseBodyData) SetElements(v []*ParseFaceResponseBodyDataElements) *ParseFaceResponseBodyData { s.Elements = v return s } func (s *ParseFaceResponseBodyData) SetOriginImageURL(v string) *ParseFaceResponseBodyData { s.OriginImageURL = &v return s } type ParseFaceResponseBodyDataElements struct { // example: // // http://vibktprfx-prod-prod-aic-gd-cn-shanghai.oss-cn-shanghai.aliyuncs.com/fivesensesegmenter/prod/560FA2E7-FDC6-59A5-ABDD-D62A05146734/skin/_18dd_20211231-040658.png?Expires=1640925418&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=2g0M88wZl%2Bn4t4gzQX%2BTIskpWB**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // skin Name *string `json:"Name,omitempty" xml:"Name,omitempty"` } func (s ParseFaceResponseBodyDataElements) String() string { return tea.Prettify(s) } func (s ParseFaceResponseBodyDataElements) GoString() string { return s.String() } func (s *ParseFaceResponseBodyDataElements) SetImageURL(v string) *ParseFaceResponseBodyDataElements { s.ImageURL = &v return s } func (s *ParseFaceResponseBodyDataElements) SetName(v string) *ParseFaceResponseBodyDataElements { s.Name = &v return s } type ParseFaceResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *ParseFaceResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s ParseFaceResponse) String() string { return tea.Prettify(s) } func (s ParseFaceResponse) GoString() string { return s.String() } func (s *ParseFaceResponse) SetHeaders(v map[string]*string) *ParseFaceResponse { s.Headers = v return s } func (s *ParseFaceResponse) SetStatusCode(v int32) *ParseFaceResponse { s.StatusCode = &v return s } func (s *ParseFaceResponse) SetBody(v *ParseFaceResponseBody) *ParseFaceResponse { s.Body = v return s } type RefineMaskRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/RefineMask/RefineMask1.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/RefineMask/RefineMask6.jpg MaskImageURL *string `json:"MaskImageURL,omitempty" xml:"MaskImageURL,omitempty"` } func (s RefineMaskRequest) String() string { return tea.Prettify(s) } func (s RefineMaskRequest) GoString() string { return s.String() } func (s *RefineMaskRequest) SetImageURL(v string) *RefineMaskRequest { s.ImageURL = &v return s } func (s *RefineMaskRequest) SetMaskImageURL(v string) *RefineMaskRequest { s.MaskImageURL = &v return s } type RefineMaskAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/RefineMask/RefineMask1.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/RefineMask/RefineMask6.jpg MaskImageURLObject io.Reader `json:"MaskImageURL,omitempty" xml:"MaskImageURL,omitempty"` } func (s RefineMaskAdvanceRequest) String() string { return tea.Prettify(s) } func (s RefineMaskAdvanceRequest) GoString() string { return s.String() } func (s *RefineMaskAdvanceRequest) SetImageURLObject(v io.Reader) *RefineMaskAdvanceRequest { s.ImageURLObject = v return s } func (s *RefineMaskAdvanceRequest) SetMaskImageURLObject(v io.Reader) *RefineMaskAdvanceRequest { s.MaskImageURLObject = v return s } type RefineMaskResponseBody struct { Data *RefineMaskResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // E948F80B-86D9-54E0-9FF9-ACF3B1DA83C4 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s RefineMaskResponseBody) String() string { return tea.Prettify(s) } func (s RefineMaskResponseBody) GoString() string { return s.String() } func (s *RefineMaskResponseBody) SetData(v *RefineMaskResponseBodyData) *RefineMaskResponseBody { s.Data = v return s } func (s *RefineMaskResponseBody) SetRequestId(v string) *RefineMaskResponseBody { s.RequestId = &v return s } type RefineMaskResponseBodyData struct { Elements []*RefineMaskResponseBodyDataElements `json:"Elements,omitempty" xml:"Elements,omitempty" type:"Repeated"` } func (s RefineMaskResponseBodyData) String() string { return tea.Prettify(s) } func (s RefineMaskResponseBodyData) GoString() string { return s.String() } func (s *RefineMaskResponseBodyData) SetElements(v []*RefineMaskResponseBodyDataElements) *RefineMaskResponseBodyData { s.Elements = v return s } type RefineMaskResponseBodyDataElements struct { // example: // // http://algo-app-taobao-mm-cn-shanghai-prod.oss-cn-shanghai.aliyuncs.com/pixelai-portrait-beauty%2F2020_03_04%2F61f544a1a5004c88a2bf29452db494e9.jpeg?OSSAccessKeyId=LTAI4Fmdm1gQonFLrghJ****&Expires=1583406122&Signature=Heet1ivG0xFP3YlO6usvd0pmrH**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s RefineMaskResponseBodyDataElements) String() string { return tea.Prettify(s) } func (s RefineMaskResponseBodyDataElements) GoString() string { return s.String() } func (s *RefineMaskResponseBodyDataElements) SetImageURL(v string) *RefineMaskResponseBodyDataElements { s.ImageURL = &v return s } type RefineMaskResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *RefineMaskResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s RefineMaskResponse) String() string { return tea.Prettify(s) } func (s RefineMaskResponse) GoString() string { return s.String() } func (s *RefineMaskResponse) SetHeaders(v map[string]*string) *RefineMaskResponse { s.Headers = v return s } func (s *RefineMaskResponse) SetStatusCode(v int32) *RefineMaskResponse { s.StatusCode = &v return s } func (s *RefineMaskResponse) SetBody(v *RefineMaskResponseBody) *RefineMaskResponse { s.Body = v return s } type SegmentBodyRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentBody/SegmentBody1.png ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentBodyRequest) String() string { return tea.Prettify(s) } func (s SegmentBodyRequest) GoString() string { return s.String() } func (s *SegmentBodyRequest) SetImageURL(v string) *SegmentBodyRequest { s.ImageURL = &v return s } func (s *SegmentBodyRequest) SetReturnForm(v string) *SegmentBodyRequest { s.ReturnForm = &v return s } type SegmentBodyAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentBody/SegmentBody1.png ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentBodyAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentBodyAdvanceRequest) GoString() string { return s.String() } func (s *SegmentBodyAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentBodyAdvanceRequest { s.ImageURLObject = v return s } func (s *SegmentBodyAdvanceRequest) SetReturnForm(v string) *SegmentBodyAdvanceRequest { s.ReturnForm = &v return s } type SegmentBodyResponseBody struct { Data *SegmentBodyResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // 30EDCEEA-2806-44C6-AF0B-0988849106FE RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentBodyResponseBody) String() string { return tea.Prettify(s) } func (s SegmentBodyResponseBody) GoString() string { return s.String() } func (s *SegmentBodyResponseBody) SetData(v *SegmentBodyResponseBodyData) *SegmentBodyResponseBody { s.Data = v return s } func (s *SegmentBodyResponseBody) SetRequestId(v string) *SegmentBodyResponseBody { s.RequestId = &v return s } type SegmentBodyResponseBodyData struct { // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_humansegmenter/2021-3-31/invi_humansegmenter_016171823500001081370_Ej0WwO.jpg?Expires=1617184150&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=ZwaWXpAOMzHar%2B1wVO7zeSD83r**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentBodyResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentBodyResponseBodyData) GoString() string { return s.String() } func (s *SegmentBodyResponseBodyData) SetImageURL(v string) *SegmentBodyResponseBodyData { s.ImageURL = &v return s } type SegmentBodyResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentBodyResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentBodyResponse) String() string { return tea.Prettify(s) } func (s SegmentBodyResponse) GoString() string { return s.String() } func (s *SegmentBodyResponse) SetHeaders(v map[string]*string) *SegmentBodyResponse { s.Headers = v return s } func (s *SegmentBodyResponse) SetStatusCode(v int32) *SegmentBodyResponse { s.StatusCode = &v return s } func (s *SegmentBodyResponse) SetBody(v *SegmentBodyResponseBody) *SegmentBodyResponse { s.Body = v return s } type SegmentClothRequest struct { ClothClass []*string `json:"ClothClass,omitempty" xml:"ClothClass,omitempty" type:"Repeated"` // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentCloth/SegmentCloth1.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` OutMode *int64 `json:"OutMode,omitempty" xml:"OutMode,omitempty"` ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentClothRequest) String() string { return tea.Prettify(s) } func (s SegmentClothRequest) GoString() string { return s.String() } func (s *SegmentClothRequest) SetClothClass(v []*string) *SegmentClothRequest { s.ClothClass = v return s } func (s *SegmentClothRequest) SetImageURL(v string) *SegmentClothRequest { s.ImageURL = &v return s } func (s *SegmentClothRequest) SetOutMode(v int64) *SegmentClothRequest { s.OutMode = &v return s } func (s *SegmentClothRequest) SetReturnForm(v string) *SegmentClothRequest { s.ReturnForm = &v return s } type SegmentClothAdvanceRequest struct { ClothClass []*string `json:"ClothClass,omitempty" xml:"ClothClass,omitempty" type:"Repeated"` // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentCloth/SegmentCloth1.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` OutMode *int64 `json:"OutMode,omitempty" xml:"OutMode,omitempty"` ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentClothAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentClothAdvanceRequest) GoString() string { return s.String() } func (s *SegmentClothAdvanceRequest) SetClothClass(v []*string) *SegmentClothAdvanceRequest { s.ClothClass = v return s } func (s *SegmentClothAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentClothAdvanceRequest { s.ImageURLObject = v return s } func (s *SegmentClothAdvanceRequest) SetOutMode(v int64) *SegmentClothAdvanceRequest { s.OutMode = &v return s } func (s *SegmentClothAdvanceRequest) SetReturnForm(v string) *SegmentClothAdvanceRequest { s.ReturnForm = &v return s } type SegmentClothResponseBody struct { Data *SegmentClothResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // BCE049A3-FE69-41CF-A870-5970156388A7 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentClothResponseBody) String() string { return tea.Prettify(s) } func (s SegmentClothResponseBody) GoString() string { return s.String() } func (s *SegmentClothResponseBody) SetData(v *SegmentClothResponseBodyData) *SegmentClothResponseBody { s.Data = v return s } func (s *SegmentClothResponseBody) SetRequestId(v string) *SegmentClothResponseBody { s.RequestId = &v return s } type SegmentClothResponseBodyData struct { Elements []*SegmentClothResponseBodyDataElements `json:"Elements,omitempty" xml:"Elements,omitempty" type:"Repeated"` } func (s SegmentClothResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentClothResponseBodyData) GoString() string { return s.String() } func (s *SegmentClothResponseBodyData) SetElements(v []*SegmentClothResponseBodyDataElements) *SegmentClothResponseBodyData { s.Elements = v return s } type SegmentClothResponseBodyDataElements struct { ClassUrl map[string]*string `json:"ClassUrl,omitempty" xml:"ClassUrl,omitempty"` // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/clothingsegmentation-2020-06-17-16-54-40-688c84cbbd-hnqfq/2020-6-18/invi__015924459307821000041_IIVHoM.png?Expires=1592447730&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=Hy8pn3IQj8nuKN0LEaC57cee9L**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentClothResponseBodyDataElements) String() string { return tea.Prettify(s) } func (s SegmentClothResponseBodyDataElements) GoString() string { return s.String() } func (s *SegmentClothResponseBodyDataElements) SetClassUrl(v map[string]*string) *SegmentClothResponseBodyDataElements { s.ClassUrl = v return s } func (s *SegmentClothResponseBodyDataElements) SetImageURL(v string) *SegmentClothResponseBodyDataElements { s.ImageURL = &v return s } type SegmentClothResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentClothResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentClothResponse) String() string { return tea.Prettify(s) } func (s SegmentClothResponse) GoString() string { return s.String() } func (s *SegmentClothResponse) SetHeaders(v map[string]*string) *SegmentClothResponse { s.Headers = v return s } func (s *SegmentClothResponse) SetStatusCode(v int32) *SegmentClothResponse { s.StatusCode = &v return s } func (s *SegmentClothResponse) SetBody(v *SegmentClothResponseBody) *SegmentClothResponse { s.Body = v return s } type SegmentCommodityRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentCommodity/SegmentCommodity1.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentCommodityRequest) String() string { return tea.Prettify(s) } func (s SegmentCommodityRequest) GoString() string { return s.String() } func (s *SegmentCommodityRequest) SetImageURL(v string) *SegmentCommodityRequest { s.ImageURL = &v return s } func (s *SegmentCommodityRequest) SetReturnForm(v string) *SegmentCommodityRequest { s.ReturnForm = &v return s } type SegmentCommodityAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentCommodity/SegmentCommodity1.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentCommodityAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentCommodityAdvanceRequest) GoString() string { return s.String() } func (s *SegmentCommodityAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentCommodityAdvanceRequest { s.ImageURLObject = v return s } func (s *SegmentCommodityAdvanceRequest) SetReturnForm(v string) *SegmentCommodityAdvanceRequest { s.ReturnForm = &v return s } type SegmentCommodityResponseBody struct { Data *SegmentCommodityResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // D6C24839-91A7-41DA-B31F-98F08EF80CC0 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentCommodityResponseBody) String() string { return tea.Prettify(s) } func (s SegmentCommodityResponseBody) GoString() string { return s.String() } func (s *SegmentCommodityResponseBody) SetData(v *SegmentCommodityResponseBodyData) *SegmentCommodityResponseBody { s.Data = v return s } func (s *SegmentCommodityResponseBody) SetRequestId(v string) *SegmentCommodityResponseBody { s.RequestId = &v return s } type SegmentCommodityResponseBodyData struct { // example: // // http://luban-vgd-invi.oss-cn-hangzhou.aliyuncs.com/upload/result_segmenter/2019-12-20/invi_segmenter_015768355410261076021_Z3t0fc.png?Expires=1577094741&OSSAccessKeyId=LTAI4Fc5SVvzUQ19K1Cz****&Signature=pkaKK3VlfsTR2r%2BYycJzTVEEos**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentCommodityResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentCommodityResponseBodyData) GoString() string { return s.String() } func (s *SegmentCommodityResponseBodyData) SetImageURL(v string) *SegmentCommodityResponseBodyData { s.ImageURL = &v return s } type SegmentCommodityResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentCommodityResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentCommodityResponse) String() string { return tea.Prettify(s) } func (s SegmentCommodityResponse) GoString() string { return s.String() } func (s *SegmentCommodityResponse) SetHeaders(v map[string]*string) *SegmentCommodityResponse { s.Headers = v return s } func (s *SegmentCommodityResponse) SetStatusCode(v int32) *SegmentCommodityResponse { s.StatusCode = &v return s } func (s *SegmentCommodityResponse) SetBody(v *SegmentCommodityResponseBody) *SegmentCommodityResponse { s.Body = v return s } type SegmentCommonImageRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentCommonImage/SegmentCommonImage1.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentCommonImageRequest) String() string { return tea.Prettify(s) } func (s SegmentCommonImageRequest) GoString() string { return s.String() } func (s *SegmentCommonImageRequest) SetImageURL(v string) *SegmentCommonImageRequest { s.ImageURL = &v return s } func (s *SegmentCommonImageRequest) SetReturnForm(v string) *SegmentCommonImageRequest { s.ReturnForm = &v return s } type SegmentCommonImageAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentCommonImage/SegmentCommonImage1.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentCommonImageAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentCommonImageAdvanceRequest) GoString() string { return s.String() } func (s *SegmentCommonImageAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentCommonImageAdvanceRequest { s.ImageURLObject = v return s } func (s *SegmentCommonImageAdvanceRequest) SetReturnForm(v string) *SegmentCommonImageAdvanceRequest { s.ReturnForm = &v return s } type SegmentCommonImageResponseBody struct { Data *SegmentCommonImageResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // 1B8BEF02-0672-44CA-A974-4D6FAC392497 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentCommonImageResponseBody) String() string { return tea.Prettify(s) } func (s SegmentCommonImageResponseBody) GoString() string { return s.String() } func (s *SegmentCommonImageResponseBody) SetData(v *SegmentCommonImageResponseBodyData) *SegmentCommonImageResponseBody { s.Data = v return s } func (s *SegmentCommonImageResponseBody) SetRequestId(v string) *SegmentCommonImageResponseBody { s.RequestId = &v return s } type SegmentCommonImageResponseBodyData struct { // example: // // http://luban-vgd-invi.oss-cn-hangzhou.aliyuncs.com/upload/result_segmenter/2019-12-20/invi_segmenter_015768355410261076021_Z3t0fc.png?Expires=1577094741&OSSAccessKeyId=LTAI4Fc5SVvzUQ19K1Cz****&Signature=pkaKK3VlfsTR2r%2BYycJzTVEEos**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentCommonImageResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentCommonImageResponseBodyData) GoString() string { return s.String() } func (s *SegmentCommonImageResponseBodyData) SetImageURL(v string) *SegmentCommonImageResponseBodyData { s.ImageURL = &v return s } type SegmentCommonImageResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentCommonImageResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentCommonImageResponse) String() string { return tea.Prettify(s) } func (s SegmentCommonImageResponse) GoString() string { return s.String() } func (s *SegmentCommonImageResponse) SetHeaders(v map[string]*string) *SegmentCommonImageResponse { s.Headers = v return s } func (s *SegmentCommonImageResponse) SetStatusCode(v int32) *SegmentCommonImageResponse { s.StatusCode = &v return s } func (s *SegmentCommonImageResponse) SetBody(v *SegmentCommonImageResponseBody) *SegmentCommonImageResponse { s.Body = v return s } type SegmentFoodRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentFood/SegmentFood5.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentFoodRequest) String() string { return tea.Prettify(s) } func (s SegmentFoodRequest) GoString() string { return s.String() } func (s *SegmentFoodRequest) SetImageURL(v string) *SegmentFoodRequest { s.ImageURL = &v return s } func (s *SegmentFoodRequest) SetReturnForm(v string) *SegmentFoodRequest { s.ReturnForm = &v return s } type SegmentFoodAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentFood/SegmentFood5.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentFoodAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentFoodAdvanceRequest) GoString() string { return s.String() } func (s *SegmentFoodAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentFoodAdvanceRequest { s.ImageURLObject = v return s } func (s *SegmentFoodAdvanceRequest) SetReturnForm(v string) *SegmentFoodAdvanceRequest { s.ReturnForm = &v return s } type SegmentFoodResponseBody struct { Data *SegmentFoodResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // 38265D08-AD0F-4752-8E96-D1D9FB96C3D9 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentFoodResponseBody) String() string { return tea.Prettify(s) } func (s SegmentFoodResponseBody) GoString() string { return s.String() } func (s *SegmentFoodResponseBody) SetData(v *SegmentFoodResponseBodyData) *SegmentFoodResponseBody { s.Data = v return s } func (s *SegmentFoodResponseBody) SetRequestId(v string) *SegmentFoodResponseBody { s.RequestId = &v return s } type SegmentFoodResponseBodyData struct { // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/foodsegmenter-2020-06-17-15-24-00-8658fc85b8-8ds8k/2020-6-18/invi__015924442076191000002_WqJ99N.png?Expires=1592446007&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=5ITSd6ndSuP7pUfoDFpgLPUOGg**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentFoodResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentFoodResponseBodyData) GoString() string { return s.String() } func (s *SegmentFoodResponseBodyData) SetImageURL(v string) *SegmentFoodResponseBodyData { s.ImageURL = &v return s } type SegmentFoodResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentFoodResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentFoodResponse) String() string { return tea.Prettify(s) } func (s SegmentFoodResponse) GoString() string { return s.String() } func (s *SegmentFoodResponse) SetHeaders(v map[string]*string) *SegmentFoodResponse { s.Headers = v return s } func (s *SegmentFoodResponse) SetStatusCode(v int32) *SegmentFoodResponse { s.StatusCode = &v return s } func (s *SegmentFoodResponse) SetBody(v *SegmentFoodResponseBody) *SegmentFoodResponse { s.Body = v return s } type SegmentHDBodyRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHDBody/SegmentHDBody1.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentHDBodyRequest) String() string { return tea.Prettify(s) } func (s SegmentHDBodyRequest) GoString() string { return s.String() } func (s *SegmentHDBodyRequest) SetImageURL(v string) *SegmentHDBodyRequest { s.ImageURL = &v return s } type SegmentHDBodyAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHDBody/SegmentHDBody1.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentHDBodyAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentHDBodyAdvanceRequest) GoString() string { return s.String() } func (s *SegmentHDBodyAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentHDBodyAdvanceRequest { s.ImageURLObject = v return s } type SegmentHDBodyResponseBody struct { Data *SegmentHDBodyResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // A8D3F5C3-E414-4981-8D84-E2CADF0B7CBC RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentHDBodyResponseBody) String() string { return tea.Prettify(s) } func (s SegmentHDBodyResponseBody) GoString() string { return s.String() } func (s *SegmentHDBodyResponseBody) SetData(v *SegmentHDBodyResponseBodyData) *SegmentHDBodyResponseBody { s.Data = v return s } func (s *SegmentHDBodyResponseBody) SetRequestId(v string) *SegmentHDBodyResponseBody { s.RequestId = &v return s } type SegmentHDBodyResponseBodyData struct { // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/segmenthdbody-2020-05-18-16-27-45-675d9884d7-kd9dz/2020-5-18/invi_humansegmenter_015897914589851000001_wQbLq9.png?Expires=1589793259&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=Lx6xSS0t7lqEvy5Qd1keccIAjL**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentHDBodyResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentHDBodyResponseBodyData) GoString() string { return s.String() } func (s *SegmentHDBodyResponseBodyData) SetImageURL(v string) *SegmentHDBodyResponseBodyData { s.ImageURL = &v return s } type SegmentHDBodyResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentHDBodyResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentHDBodyResponse) String() string { return tea.Prettify(s) } func (s SegmentHDBodyResponse) GoString() string { return s.String() } func (s *SegmentHDBodyResponse) SetHeaders(v map[string]*string) *SegmentHDBodyResponse { s.Headers = v return s } func (s *SegmentHDBodyResponse) SetStatusCode(v int32) *SegmentHDBodyResponse { s.StatusCode = &v return s } func (s *SegmentHDBodyResponse) SetBody(v *SegmentHDBodyResponseBody) *SegmentHDBodyResponse { s.Body = v return s } type SegmentHDCommonImageRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHDCommonImage/SegmentHDCommonImage1.jpg ImageUrl *string `json:"ImageUrl,omitempty" xml:"ImageUrl,omitempty"` } func (s SegmentHDCommonImageRequest) String() string { return tea.Prettify(s) } func (s SegmentHDCommonImageRequest) GoString() string { return s.String() } func (s *SegmentHDCommonImageRequest) SetImageUrl(v string) *SegmentHDCommonImageRequest { s.ImageUrl = &v return s } type SegmentHDCommonImageAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHDCommonImage/SegmentHDCommonImage1.jpg ImageUrlObject io.Reader `json:"ImageUrl,omitempty" xml:"ImageUrl,omitempty"` } func (s SegmentHDCommonImageAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentHDCommonImageAdvanceRequest) GoString() string { return s.String() } func (s *SegmentHDCommonImageAdvanceRequest) SetImageUrlObject(v io.Reader) *SegmentHDCommonImageAdvanceRequest { s.ImageUrlObject = v return s } type SegmentHDCommonImageResponseBody struct { Data *SegmentHDCommonImageResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` Message *string `json:"Message,omitempty" xml:"Message,omitempty"` // example: // // EC994171-7964-44B3-85AF-A715CB56747D RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentHDCommonImageResponseBody) String() string { return tea.Prettify(s) } func (s SegmentHDCommonImageResponseBody) GoString() string { return s.String() } func (s *SegmentHDCommonImageResponseBody) SetData(v *SegmentHDCommonImageResponseBodyData) *SegmentHDCommonImageResponseBody { s.Data = v return s } func (s *SegmentHDCommonImageResponseBody) SetMessage(v string) *SegmentHDCommonImageResponseBody { s.Message = &v return s } func (s *SegmentHDCommonImageResponseBody) SetRequestId(v string) *SegmentHDCommonImageResponseBody { s.RequestId = &v return s } type SegmentHDCommonImageResponseBodyData struct { // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_commoditysegmenter/2020-10-27/invi_commoditysegmenter_016037842193171000000_5pn2QM.png?Expires=1603786019&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=HwUztguGBYXmXGEmuTh%2FL3ztoh**** ImageUrl *string `json:"ImageUrl,omitempty" xml:"ImageUrl,omitempty"` } func (s SegmentHDCommonImageResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentHDCommonImageResponseBodyData) GoString() string { return s.String() } func (s *SegmentHDCommonImageResponseBodyData) SetImageUrl(v string) *SegmentHDCommonImageResponseBodyData { s.ImageUrl = &v return s } type SegmentHDCommonImageResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentHDCommonImageResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentHDCommonImageResponse) String() string { return tea.Prettify(s) } func (s SegmentHDCommonImageResponse) GoString() string { return s.String() } func (s *SegmentHDCommonImageResponse) SetHeaders(v map[string]*string) *SegmentHDCommonImageResponse { s.Headers = v return s } func (s *SegmentHDCommonImageResponse) SetStatusCode(v int32) *SegmentHDCommonImageResponse { s.StatusCode = &v return s } func (s *SegmentHDCommonImageResponse) SetBody(v *SegmentHDCommonImageResponseBody) *SegmentHDCommonImageResponse { s.Body = v return s } type SegmentHDSkyRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHDSky/SegmentHDSky4.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentHDSkyRequest) String() string { return tea.Prettify(s) } func (s SegmentHDSkyRequest) GoString() string { return s.String() } func (s *SegmentHDSkyRequest) SetImageURL(v string) *SegmentHDSkyRequest { s.ImageURL = &v return s } type SegmentHDSkyAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHDSky/SegmentHDSky4.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentHDSkyAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentHDSkyAdvanceRequest) GoString() string { return s.String() } func (s *SegmentHDSkyAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentHDSkyAdvanceRequest { s.ImageURLObject = v return s } type SegmentHDSkyResponseBody struct { Data *SegmentHDSkyResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // 1173F38F-B4F4-4A07-AB2E-D490C01347E5 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentHDSkyResponseBody) String() string { return tea.Prettify(s) } func (s SegmentHDSkyResponseBody) GoString() string { return s.String() } func (s *SegmentHDSkyResponseBody) SetData(v *SegmentHDSkyResponseBodyData) *SegmentHDSkyResponseBody { s.Data = v return s } func (s *SegmentHDSkyResponseBody) SetRequestId(v string) *SegmentHDSkyResponseBody { s.RequestId = &v return s } type SegmentHDSkyResponseBodyData struct { // example: // // http://vibktprfx-prod-prod-aic-gd-cn-shanghai.oss-cn-shanghai.aliyuncs.com/sky-segmentation-hd/res/1173F38F-B4F4-4A07-AB2E-D490C01347E5_0d56_20201027-061858.jpg?Expires=1603781339&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=2F8%2Bj%2FWruWOMqDezwpnJOkcNJD**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentHDSkyResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentHDSkyResponseBodyData) GoString() string { return s.String() } func (s *SegmentHDSkyResponseBodyData) SetImageURL(v string) *SegmentHDSkyResponseBodyData { s.ImageURL = &v return s } type SegmentHDSkyResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentHDSkyResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentHDSkyResponse) String() string { return tea.Prettify(s) } func (s SegmentHDSkyResponse) GoString() string { return s.String() } func (s *SegmentHDSkyResponse) SetHeaders(v map[string]*string) *SegmentHDSkyResponse { s.Headers = v return s } func (s *SegmentHDSkyResponse) SetStatusCode(v int32) *SegmentHDSkyResponse { s.StatusCode = &v return s } func (s *SegmentHDSkyResponse) SetBody(v *SegmentHDSkyResponseBody) *SegmentHDSkyResponse { s.Body = v return s } type SegmentHairRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHair/SegmentHair1.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentHairRequest) String() string { return tea.Prettify(s) } func (s SegmentHairRequest) GoString() string { return s.String() } func (s *SegmentHairRequest) SetImageURL(v string) *SegmentHairRequest { s.ImageURL = &v return s } type SegmentHairAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHair/SegmentHair1.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentHairAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentHairAdvanceRequest) GoString() string { return s.String() } func (s *SegmentHairAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentHairAdvanceRequest { s.ImageURLObject = v return s } type SegmentHairResponseBody struct { Data *SegmentHairResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // D6C24839-91A7-41DA-B31F-98F08EF80CC0 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentHairResponseBody) String() string { return tea.Prettify(s) } func (s SegmentHairResponseBody) GoString() string { return s.String() } func (s *SegmentHairResponseBody) SetData(v *SegmentHairResponseBodyData) *SegmentHairResponseBody { s.Data = v return s } func (s *SegmentHairResponseBody) SetRequestId(v string) *SegmentHairResponseBody { s.RequestId = &v return s } type SegmentHairResponseBodyData struct { Elements []*SegmentHairResponseBodyDataElements `json:"Elements,omitempty" xml:"Elements,omitempty" type:"Repeated"` } func (s SegmentHairResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentHairResponseBodyData) GoString() string { return s.String() } func (s *SegmentHairResponseBodyData) SetElements(v []*SegmentHairResponseBodyDataElements) *SegmentHairResponseBodyData { s.Elements = v return s } type SegmentHairResponseBodyDataElements struct { // example: // // 180 Height *int32 `json:"Height,omitempty" xml:"Height,omitempty"` // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_HeadSegmenter/2021-12-31/invi_HeadSegmenter_016409228383064285967296_iPLUXA.png?Expires=1640924638&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=wpKOqSar1bYvGmlTMryfEH2Q9I**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // 113 Width *int32 `json:"Width,omitempty" xml:"Width,omitempty"` // example: // // 446 X *int32 `json:"X,omitempty" xml:"X,omitempty"` // example: // // 102 Y *int32 `json:"Y,omitempty" xml:"Y,omitempty"` } func (s SegmentHairResponseBodyDataElements) String() string { return tea.Prettify(s) } func (s SegmentHairResponseBodyDataElements) GoString() string { return s.String() } func (s *SegmentHairResponseBodyDataElements) SetHeight(v int32) *SegmentHairResponseBodyDataElements { s.Height = &v return s } func (s *SegmentHairResponseBodyDataElements) SetImageURL(v string) *SegmentHairResponseBodyDataElements { s.ImageURL = &v return s } func (s *SegmentHairResponseBodyDataElements) SetWidth(v int32) *SegmentHairResponseBodyDataElements { s.Width = &v return s } func (s *SegmentHairResponseBodyDataElements) SetX(v int32) *SegmentHairResponseBodyDataElements { s.X = &v return s } func (s *SegmentHairResponseBodyDataElements) SetY(v int32) *SegmentHairResponseBodyDataElements { s.Y = &v return s } type SegmentHairResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentHairResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentHairResponse) String() string { return tea.Prettify(s) } func (s SegmentHairResponse) GoString() string { return s.String() } func (s *SegmentHairResponse) SetHeaders(v map[string]*string) *SegmentHairResponse { s.Headers = v return s } func (s *SegmentHairResponse) SetStatusCode(v int32) *SegmentHairResponse { s.StatusCode = &v return s } func (s *SegmentHairResponse) SetBody(v *SegmentHairResponseBody) *SegmentHairResponse { s.Body = v return s } type SegmentHeadRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHead/SegmentHead1.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentHeadRequest) String() string { return tea.Prettify(s) } func (s SegmentHeadRequest) GoString() string { return s.String() } func (s *SegmentHeadRequest) SetImageURL(v string) *SegmentHeadRequest { s.ImageURL = &v return s } func (s *SegmentHeadRequest) SetReturnForm(v string) *SegmentHeadRequest { s.ReturnForm = &v return s } type SegmentHeadAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentHead/SegmentHead1.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // mask ReturnForm *string `json:"ReturnForm,omitempty" xml:"ReturnForm,omitempty"` } func (s SegmentHeadAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentHeadAdvanceRequest) GoString() string { return s.String() } func (s *SegmentHeadAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentHeadAdvanceRequest { s.ImageURLObject = v return s } func (s *SegmentHeadAdvanceRequest) SetReturnForm(v string) *SegmentHeadAdvanceRequest { s.ReturnForm = &v return s } type SegmentHeadResponseBody struct { Data *SegmentHeadResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // 89BBDA42-E1CA-426E-9A46-C703D8DBB1E2 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentHeadResponseBody) String() string { return tea.Prettify(s) } func (s SegmentHeadResponseBody) GoString() string { return s.String() } func (s *SegmentHeadResponseBody) SetData(v *SegmentHeadResponseBodyData) *SegmentHeadResponseBody { s.Data = v return s } func (s *SegmentHeadResponseBody) SetRequestId(v string) *SegmentHeadResponseBody { s.RequestId = &v return s } type SegmentHeadResponseBodyData struct { Elements []*SegmentHeadResponseBodyDataElements `json:"Elements,omitempty" xml:"Elements,omitempty" type:"Repeated"` } func (s SegmentHeadResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentHeadResponseBodyData) GoString() string { return s.String() } func (s *SegmentHeadResponseBodyData) SetElements(v []*SegmentHeadResponseBodyDataElements) *SegmentHeadResponseBodyData { s.Elements = v return s } type SegmentHeadResponseBodyDataElements struct { // example: // // 180 Height *int32 `json:"Height,omitempty" xml:"Height,omitempty"` // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_headsegmenter/2020-6-2/invi_headsegmenter_015910809094981099086_TAamhR.png?Expires=1591082709&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=xuUE%2FbYeB9LpR18VXawOVeutQU**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` // example: // // 116 Width *int32 `json:"Width,omitempty" xml:"Width,omitempty"` // example: // // 445 X *int32 `json:"X,omitempty" xml:"X,omitempty"` // example: // // 102 Y *int32 `json:"Y,omitempty" xml:"Y,omitempty"` } func (s SegmentHeadResponseBodyDataElements) String() string { return tea.Prettify(s) } func (s SegmentHeadResponseBodyDataElements) GoString() string { return s.String() } func (s *SegmentHeadResponseBodyDataElements) SetHeight(v int32) *SegmentHeadResponseBodyDataElements { s.Height = &v return s } func (s *SegmentHeadResponseBodyDataElements) SetImageURL(v string) *SegmentHeadResponseBodyDataElements { s.ImageURL = &v return s } func (s *SegmentHeadResponseBodyDataElements) SetWidth(v int32) *SegmentHeadResponseBodyDataElements { s.Width = &v return s } func (s *SegmentHeadResponseBodyDataElements) SetX(v int32) *SegmentHeadResponseBodyDataElements { s.X = &v return s } func (s *SegmentHeadResponseBodyDataElements) SetY(v int32) *SegmentHeadResponseBodyDataElements { s.Y = &v return s } type SegmentHeadResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentHeadResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentHeadResponse) String() string { return tea.Prettify(s) } func (s SegmentHeadResponse) GoString() string { return s.String() } func (s *SegmentHeadResponse) SetHeaders(v map[string]*string) *SegmentHeadResponse { s.Headers = v return s } func (s *SegmentHeadResponse) SetStatusCode(v int32) *SegmentHeadResponse { s.StatusCode = &v return s } func (s *SegmentHeadResponse) SetBody(v *SegmentHeadResponseBody) *SegmentHeadResponse { s.Body = v return s } type SegmentSceneRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentScene/SegmentScene1.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentSceneRequest) String() string { return tea.Prettify(s) } func (s SegmentSceneRequest) GoString() string { return s.String() } func (s *SegmentSceneRequest) SetImageURL(v string) *SegmentSceneRequest { s.ImageURL = &v return s } type SegmentSceneAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentScene/SegmentScene1.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentSceneAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentSceneAdvanceRequest) GoString() string { return s.String() } func (s *SegmentSceneAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentSceneAdvanceRequest { s.ImageURLObject = v return s } type SegmentSceneResponseBody struct { Data *SegmentSceneResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // 78EC13BB-74C5-4FBE-916E-C98BD721ED61 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentSceneResponseBody) String() string { return tea.Prettify(s) } func (s SegmentSceneResponseBody) GoString() string { return s.String() } func (s *SegmentSceneResponseBody) SetData(v *SegmentSceneResponseBodyData) *SegmentSceneResponseBody { s.Data = v return s } func (s *SegmentSceneResponseBody) SetRequestId(v string) *SegmentSceneResponseBody { s.RequestId = &v return s } type SegmentSceneResponseBodyData struct { // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_skySegmentator/2020-7-24/invi_skySegmentator_015955807385661000002_WqJ99N.jpg?Expires=1595582538&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=sBP5bQCErDolM4QQG5%2B0HozNoO**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentSceneResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentSceneResponseBodyData) GoString() string { return s.String() } func (s *SegmentSceneResponseBodyData) SetImageURL(v string) *SegmentSceneResponseBodyData { s.ImageURL = &v return s } type SegmentSceneResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentSceneResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentSceneResponse) String() string { return tea.Prettify(s) } func (s SegmentSceneResponse) GoString() string { return s.String() } func (s *SegmentSceneResponse) SetHeaders(v map[string]*string) *SegmentSceneResponse { s.Headers = v return s } func (s *SegmentSceneResponse) SetStatusCode(v int32) *SegmentSceneResponse { s.StatusCode = &v return s } func (s *SegmentSceneResponse) SetBody(v *SegmentSceneResponseBody) *SegmentSceneResponse { s.Body = v return s } type SegmentSkinRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentSkin/SegmentSkin2.jpg URL *string `json:"URL,omitempty" xml:"URL,omitempty"` } func (s SegmentSkinRequest) String() string { return tea.Prettify(s) } func (s SegmentSkinRequest) GoString() string { return s.String() } func (s *SegmentSkinRequest) SetURL(v string) *SegmentSkinRequest { s.URL = &v return s } type SegmentSkinAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentSkin/SegmentSkin2.jpg URLObject io.Reader `json:"URL,omitempty" xml:"URL,omitempty"` } func (s SegmentSkinAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentSkinAdvanceRequest) GoString() string { return s.String() } func (s *SegmentSkinAdvanceRequest) SetURLObject(v io.Reader) *SegmentSkinAdvanceRequest { s.URLObject = v return s } type SegmentSkinResponseBody struct { Data *SegmentSkinResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // DA007354-6CF5-45BE-8333-E06318D848C0 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentSkinResponseBody) String() string { return tea.Prettify(s) } func (s SegmentSkinResponseBody) GoString() string { return s.String() } func (s *SegmentSkinResponseBody) SetData(v *SegmentSkinResponseBodyData) *SegmentSkinResponseBody { s.Data = v return s } func (s *SegmentSkinResponseBody) SetRequestId(v string) *SegmentSkinResponseBody { s.RequestId = &v return s } type SegmentSkinResponseBodyData struct { // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/result_skinsegmenter/2020-9-27/invi_skinsegmenter_016011971641871000001_wQbLq9.jpg?Expires=1601198964&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=xjKc%2BScprmB86cxtI%2B1T0R6TlE**** URL *string `json:"URL,omitempty" xml:"URL,omitempty"` } func (s SegmentSkinResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentSkinResponseBodyData) GoString() string { return s.String() } func (s *SegmentSkinResponseBodyData) SetURL(v string) *SegmentSkinResponseBodyData { s.URL = &v return s } type SegmentSkinResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentSkinResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentSkinResponse) String() string { return tea.Prettify(s) } func (s SegmentSkinResponse) GoString() string { return s.String() } func (s *SegmentSkinResponse) SetHeaders(v map[string]*string) *SegmentSkinResponse { s.Headers = v return s } func (s *SegmentSkinResponse) SetStatusCode(v int32) *SegmentSkinResponse { s.StatusCode = &v return s } func (s *SegmentSkinResponse) SetBody(v *SegmentSkinResponseBody) *SegmentSkinResponse { s.Body = v return s } type SegmentSkyRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentSky/SegmentSky5.jpg ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentSkyRequest) String() string { return tea.Prettify(s) } func (s SegmentSkyRequest) GoString() string { return s.String() } func (s *SegmentSkyRequest) SetImageURL(v string) *SegmentSkyRequest { s.ImageURL = &v return s } type SegmentSkyAdvanceRequest struct { // This parameter is required. // // example: // // http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/imageseg/SegmentSky/SegmentSky5.jpg ImageURLObject io.Reader `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentSkyAdvanceRequest) String() string { return tea.Prettify(s) } func (s SegmentSkyAdvanceRequest) GoString() string { return s.String() } func (s *SegmentSkyAdvanceRequest) SetImageURLObject(v io.Reader) *SegmentSkyAdvanceRequest { s.ImageURLObject = v return s } type SegmentSkyResponseBody struct { Data *SegmentSkyResponseBodyData `json:"Data,omitempty" xml:"Data,omitempty" type:"Struct"` // example: // // 80E9D0A0-0330-4210-9986-CAC50C922FF0 RequestId *string `json:"RequestId,omitempty" xml:"RequestId,omitempty"` } func (s SegmentSkyResponseBody) String() string { return tea.Prettify(s) } func (s SegmentSkyResponseBody) GoString() string { return s.String() } func (s *SegmentSkyResponseBody) SetData(v *SegmentSkyResponseBodyData) *SegmentSkyResponseBody { s.Data = v return s } func (s *SegmentSkyResponseBody) SetRequestId(v string) *SegmentSkyResponseBody { s.RequestId = &v return s } type SegmentSkyResponseBodyData struct { // example: // // http://viapi-cn-shanghai-dha-segmenter.oss-cn-shanghai.aliyuncs.com/upload/skysegmentation-2020-05-18-10-44-16-5bc8dc79f9-92b7z/2020-5-18/invi_skySegmentator_015897703560961000003_SqZLDv.png?Expires=1589772156&OSSAccessKeyId=LTAI4FoLmvQ9urWXgSRp****&Signature=gXrzAUl%2BvIdYbQ9XKdho54MlkX**** ImageURL *string `json:"ImageURL,omitempty" xml:"ImageURL,omitempty"` } func (s SegmentSkyResponseBodyData) String() string { return tea.Prettify(s) } func (s SegmentSkyResponseBodyData) GoString() string { return s.String() } func (s *SegmentSkyResponseBodyData) SetImageURL(v string) *SegmentSkyResponseBodyData { s.ImageURL = &v return s } type SegmentSkyResponse struct { Headers map[string]*string `json:"headers,omitempty" xml:"headers,omitempty"` StatusCode *int32 `json:"statusCode,omitempty" xml:"statusCode,omitempty"` Body *SegmentSkyResponseBody `json:"body,omitempty" xml:"body,omitempty"` } func (s SegmentSkyResponse) String() string { return tea.Prettify(s) } func (s SegmentSkyResponse) GoString() string { return s.String() } func (s *SegmentSkyResponse) SetHeaders(v map[string]*string) *SegmentSkyResponse { s.Headers = v return s } func (s *SegmentSkyResponse) SetStatusCode(v int32) *SegmentSkyResponse { s.StatusCode = &v return s } func (s *SegmentSkyResponse) SetBody(v *SegmentSkyResponseBody) *SegmentSkyResponse { s.Body = v return s } type Client struct { openapi.Client } func NewClient(config *openapi.Config) (*Client, error) { client := new(Client) err := client.Init(config) return client, err } func (client *Client) Init(config *openapi.Config) (_err error) { _err = client.Client.Init(config) if _err != nil { return _err } client.EndpointRule = tea.String("regional") _err = client.CheckConfig(config) if _err != nil { return _err } client.Endpoint, _err = client.GetEndpoint(tea.String("imageseg"), client.RegionId, client.EndpointRule, client.Network, client.Suffix, client.EndpointMap, client.Endpoint) if _err != nil { return _err } return nil } func (client *Client) GetEndpoint(productId *string, regionId *string, endpointRule *string, network *string, suffix *string, endpointMap map[string]*string, endpoint *string) (_result *string, _err error) { if !tea.BoolValue(util.Empty(endpoint)) { _result = endpoint return _result, _err } if !tea.BoolValue(util.IsUnset(endpointMap)) && !tea.BoolValue(util.Empty(endpointMap[tea.StringValue(regionId)])) { _result = endpointMap[tea.StringValue(regionId)] return _result, _err } _body, _err := endpointutil.GetEndpointRules(productId, regionId, endpointRule, network, suffix) if _err != nil { return _result, _err } _result = _body return _result, _err } // @param request - ChangeSkyRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return ChangeSkyResponse func (client *Client) ChangeSkyWithOptions(request *ChangeSkyRequest, runtime *util.RuntimeOptions) (_result *ChangeSkyResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } if !tea.BoolValue(util.IsUnset(request.ReplaceImageURL)) { query["ReplaceImageURL"] = request.ReplaceImageURL } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("ChangeSky"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &ChangeSkyResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - ChangeSkyRequest // // @return ChangeSkyResponse func (client *Client) ChangeSky(request *ChangeSkyRequest) (_result *ChangeSkyResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &ChangeSkyResponse{} _body, _err := client.ChangeSkyWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) ChangeSkyAdvance(request *ChangeSkyAdvanceRequest, runtime *util.RuntimeOptions) (_result *ChangeSkyResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) changeSkyReq := &ChangeSkyRequest{} openapiutil.Convert(request, changeSkyReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } changeSkyReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } if !tea.BoolValue(util.IsUnset(request.ReplaceImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ReplaceImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } changeSkyReq.ReplaceImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } changeSkyResp, _err := client.ChangeSkyWithOptions(changeSkyReq, runtime) if _err != nil { return _result, _err } _result = changeSkyResp return _result, _err } // @param request - GetAsyncJobResultRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return GetAsyncJobResultResponse func (client *Client) GetAsyncJobResultWithOptions(request *GetAsyncJobResultRequest, runtime *util.RuntimeOptions) (_result *GetAsyncJobResultResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } body := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.JobId)) { body["JobId"] = request.JobId } req := &openapi.OpenApiRequest{ Body: openapiutil.ParseToMap(body), } params := &openapi.Params{ Action: tea.String("GetAsyncJobResult"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &GetAsyncJobResultResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - GetAsyncJobResultRequest // // @return GetAsyncJobResultResponse func (client *Client) GetAsyncJobResult(request *GetAsyncJobResultRequest) (_result *GetAsyncJobResultResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &GetAsyncJobResultResponse{} _body, _err := client.GetAsyncJobResultWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } // @param request - ParseFaceRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return ParseFaceResponse func (client *Client) ParseFaceWithOptions(request *ParseFaceRequest, runtime *util.RuntimeOptions) (_result *ParseFaceResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("ParseFace"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &ParseFaceResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - ParseFaceRequest // // @return ParseFaceResponse func (client *Client) ParseFace(request *ParseFaceRequest) (_result *ParseFaceResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &ParseFaceResponse{} _body, _err := client.ParseFaceWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) ParseFaceAdvance(request *ParseFaceAdvanceRequest, runtime *util.RuntimeOptions) (_result *ParseFaceResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) parseFaceReq := &ParseFaceRequest{} openapiutil.Convert(request, parseFaceReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } parseFaceReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } parseFaceResp, _err := client.ParseFaceWithOptions(parseFaceReq, runtime) if _err != nil { return _result, _err } _result = parseFaceResp return _result, _err } // @param request - RefineMaskRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return RefineMaskResponse func (client *Client) RefineMaskWithOptions(request *RefineMaskRequest, runtime *util.RuntimeOptions) (_result *RefineMaskResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } body := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL } if !tea.BoolValue(util.IsUnset(request.MaskImageURL)) { body["MaskImageURL"] = request.MaskImageURL } req := &openapi.OpenApiRequest{ Body: openapiutil.ParseToMap(body), } params := &openapi.Params{ Action: tea.String("RefineMask"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &RefineMaskResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - RefineMaskRequest // // @return RefineMaskResponse func (client *Client) RefineMask(request *RefineMaskRequest) (_result *RefineMaskResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &RefineMaskResponse{} _body, _err := client.RefineMaskWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) RefineMaskAdvance(request *RefineMaskAdvanceRequest, runtime *util.RuntimeOptions) (_result *RefineMaskResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) refineMaskReq := &RefineMaskRequest{} openapiutil.Convert(request, refineMaskReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } refineMaskReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } if !tea.BoolValue(util.IsUnset(request.MaskImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.MaskImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } refineMaskReq.MaskImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } refineMaskResp, _err := client.RefineMaskWithOptions(refineMaskReq, runtime) if _err != nil { return _result, _err } _result = refineMaskResp return _result, _err } // @param request - SegmentBodyRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentBodyResponse func (client *Client) SegmentBodyWithOptions(request *SegmentBodyRequest, runtime *util.RuntimeOptions) (_result *SegmentBodyResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } if !tea.BoolValue(util.IsUnset(request.ReturnForm)) { query["ReturnForm"] = request.ReturnForm } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentBody"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentBodyResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentBodyRequest // // @return SegmentBodyResponse func (client *Client) SegmentBody(request *SegmentBodyRequest) (_result *SegmentBodyResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentBodyResponse{} _body, _err := client.SegmentBodyWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentBodyAdvance(request *SegmentBodyAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentBodyResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentBodyReq := &SegmentBodyRequest{} openapiutil.Convert(request, segmentBodyReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentBodyReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentBodyResp, _err := client.SegmentBodyWithOptions(segmentBodyReq, runtime) if _err != nil { return _result, _err } _result = segmentBodyResp return _result, _err } // @param request - SegmentClothRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentClothResponse func (client *Client) SegmentClothWithOptions(request *SegmentClothRequest, runtime *util.RuntimeOptions) (_result *SegmentClothResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ClothClass)) { query["ClothClass"] = request.ClothClass } if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } if !tea.BoolValue(util.IsUnset(request.OutMode)) { query["OutMode"] = request.OutMode } if !tea.BoolValue(util.IsUnset(request.ReturnForm)) { query["ReturnForm"] = request.ReturnForm } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentCloth"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentClothResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentClothRequest // // @return SegmentClothResponse func (client *Client) SegmentCloth(request *SegmentClothRequest) (_result *SegmentClothResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentClothResponse{} _body, _err := client.SegmentClothWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentClothAdvance(request *SegmentClothAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentClothResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentClothReq := &SegmentClothRequest{} openapiutil.Convert(request, segmentClothReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentClothReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentClothResp, _err := client.SegmentClothWithOptions(segmentClothReq, runtime) if _err != nil { return _result, _err } _result = segmentClothResp return _result, _err } // @param request - SegmentCommodityRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentCommodityResponse func (client *Client) SegmentCommodityWithOptions(request *SegmentCommodityRequest, runtime *util.RuntimeOptions) (_result *SegmentCommodityResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } if !tea.BoolValue(util.IsUnset(request.ReturnForm)) { query["ReturnForm"] = request.ReturnForm } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentCommodity"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentCommodityResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentCommodityRequest // // @return SegmentCommodityResponse func (client *Client) SegmentCommodity(request *SegmentCommodityRequest) (_result *SegmentCommodityResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentCommodityResponse{} _body, _err := client.SegmentCommodityWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentCommodityAdvance(request *SegmentCommodityAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentCommodityResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentCommodityReq := &SegmentCommodityRequest{} openapiutil.Convert(request, segmentCommodityReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentCommodityReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentCommodityResp, _err := client.SegmentCommodityWithOptions(segmentCommodityReq, runtime) if _err != nil { return _result, _err } _result = segmentCommodityResp return _result, _err } // @param request - SegmentCommonImageRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentCommonImageResponse func (client *Client) SegmentCommonImageWithOptions(request *SegmentCommonImageRequest, runtime *util.RuntimeOptions) (_result *SegmentCommonImageResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } if !tea.BoolValue(util.IsUnset(request.ReturnForm)) { query["ReturnForm"] = request.ReturnForm } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentCommonImage"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentCommonImageResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentCommonImageRequest // // @return SegmentCommonImageResponse func (client *Client) SegmentCommonImage(request *SegmentCommonImageRequest) (_result *SegmentCommonImageResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentCommonImageResponse{} _body, _err := client.SegmentCommonImageWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentCommonImageAdvance(request *SegmentCommonImageAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentCommonImageResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentCommonImageReq := &SegmentCommonImageRequest{} openapiutil.Convert(request, segmentCommonImageReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentCommonImageReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentCommonImageResp, _err := client.SegmentCommonImageWithOptions(segmentCommonImageReq, runtime) if _err != nil { return _result, _err } _result = segmentCommonImageResp return _result, _err } // @param request - SegmentFoodRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentFoodResponse func (client *Client) SegmentFoodWithOptions(request *SegmentFoodRequest, runtime *util.RuntimeOptions) (_result *SegmentFoodResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } if !tea.BoolValue(util.IsUnset(request.ReturnForm)) { query["ReturnForm"] = request.ReturnForm } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentFood"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentFoodResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentFoodRequest // // @return SegmentFoodResponse func (client *Client) SegmentFood(request *SegmentFoodRequest) (_result *SegmentFoodResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentFoodResponse{} _body, _err := client.SegmentFoodWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentFoodAdvance(request *SegmentFoodAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentFoodResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentFoodReq := &SegmentFoodRequest{} openapiutil.Convert(request, segmentFoodReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentFoodReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentFoodResp, _err := client.SegmentFoodWithOptions(segmentFoodReq, runtime) if _err != nil { return _result, _err } _result = segmentFoodResp return _result, _err } // @param request - SegmentHDBodyRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentHDBodyResponse func (client *Client) SegmentHDBodyWithOptions(request *SegmentHDBodyRequest, runtime *util.RuntimeOptions) (_result *SegmentHDBodyResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentHDBody"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentHDBodyResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentHDBodyRequest // // @return SegmentHDBodyResponse func (client *Client) SegmentHDBody(request *SegmentHDBodyRequest) (_result *SegmentHDBodyResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentHDBodyResponse{} _body, _err := client.SegmentHDBodyWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentHDBodyAdvance(request *SegmentHDBodyAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentHDBodyResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentHDBodyReq := &SegmentHDBodyRequest{} openapiutil.Convert(request, segmentHDBodyReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentHDBodyReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentHDBodyResp, _err := client.SegmentHDBodyWithOptions(segmentHDBodyReq, runtime) if _err != nil { return _result, _err } _result = segmentHDBodyResp return _result, _err } // @param request - SegmentHDCommonImageRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentHDCommonImageResponse func (client *Client) SegmentHDCommonImageWithOptions(request *SegmentHDCommonImageRequest, runtime *util.RuntimeOptions) (_result *SegmentHDCommonImageResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } body := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageUrl)) { body["ImageUrl"] = request.ImageUrl } req := &openapi.OpenApiRequest{ Body: openapiutil.ParseToMap(body), } params := &openapi.Params{ Action: tea.String("SegmentHDCommonImage"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentHDCommonImageResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentHDCommonImageRequest // // @return SegmentHDCommonImageResponse func (client *Client) SegmentHDCommonImage(request *SegmentHDCommonImageRequest) (_result *SegmentHDCommonImageResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentHDCommonImageResponse{} _body, _err := client.SegmentHDCommonImageWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentHDCommonImageAdvance(request *SegmentHDCommonImageAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentHDCommonImageResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentHDCommonImageReq := &SegmentHDCommonImageRequest{} openapiutil.Convert(request, segmentHDCommonImageReq) if !tea.BoolValue(util.IsUnset(request.ImageUrlObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageUrlObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentHDCommonImageReq.ImageUrl = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentHDCommonImageResp, _err := client.SegmentHDCommonImageWithOptions(segmentHDCommonImageReq, runtime) if _err != nil { return _result, _err } _result = segmentHDCommonImageResp return _result, _err } // @param request - SegmentHDSkyRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentHDSkyResponse func (client *Client) SegmentHDSkyWithOptions(request *SegmentHDSkyRequest, runtime *util.RuntimeOptions) (_result *SegmentHDSkyResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } body := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { body["ImageURL"] = request.ImageURL } req := &openapi.OpenApiRequest{ Body: openapiutil.ParseToMap(body), } params := &openapi.Params{ Action: tea.String("SegmentHDSky"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentHDSkyResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentHDSkyRequest // // @return SegmentHDSkyResponse func (client *Client) SegmentHDSky(request *SegmentHDSkyRequest) (_result *SegmentHDSkyResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentHDSkyResponse{} _body, _err := client.SegmentHDSkyWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentHDSkyAdvance(request *SegmentHDSkyAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentHDSkyResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentHDSkyReq := &SegmentHDSkyRequest{} openapiutil.Convert(request, segmentHDSkyReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentHDSkyReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentHDSkyResp, _err := client.SegmentHDSkyWithOptions(segmentHDSkyReq, runtime) if _err != nil { return _result, _err } _result = segmentHDSkyResp return _result, _err } // @param request - SegmentHairRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentHairResponse func (client *Client) SegmentHairWithOptions(request *SegmentHairRequest, runtime *util.RuntimeOptions) (_result *SegmentHairResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentHair"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentHairResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentHairRequest // // @return SegmentHairResponse func (client *Client) SegmentHair(request *SegmentHairRequest) (_result *SegmentHairResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentHairResponse{} _body, _err := client.SegmentHairWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentHairAdvance(request *SegmentHairAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentHairResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentHairReq := &SegmentHairRequest{} openapiutil.Convert(request, segmentHairReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentHairReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentHairResp, _err := client.SegmentHairWithOptions(segmentHairReq, runtime) if _err != nil { return _result, _err } _result = segmentHairResp return _result, _err } // @param request - SegmentHeadRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentHeadResponse func (client *Client) SegmentHeadWithOptions(request *SegmentHeadRequest, runtime *util.RuntimeOptions) (_result *SegmentHeadResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } if !tea.BoolValue(util.IsUnset(request.ReturnForm)) { query["ReturnForm"] = request.ReturnForm } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentHead"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentHeadResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentHeadRequest // // @return SegmentHeadResponse func (client *Client) SegmentHead(request *SegmentHeadRequest) (_result *SegmentHeadResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentHeadResponse{} _body, _err := client.SegmentHeadWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentHeadAdvance(request *SegmentHeadAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentHeadResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentHeadReq := &SegmentHeadRequest{} openapiutil.Convert(request, segmentHeadReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentHeadReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentHeadResp, _err := client.SegmentHeadWithOptions(segmentHeadReq, runtime) if _err != nil { return _result, _err } _result = segmentHeadResp return _result, _err } // @param request - SegmentSceneRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentSceneResponse func (client *Client) SegmentSceneWithOptions(request *SegmentSceneRequest, runtime *util.RuntimeOptions) (_result *SegmentSceneResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentScene"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentSceneResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentSceneRequest // // @return SegmentSceneResponse func (client *Client) SegmentScene(request *SegmentSceneRequest) (_result *SegmentSceneResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentSceneResponse{} _body, _err := client.SegmentSceneWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentSceneAdvance(request *SegmentSceneAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentSceneResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentSceneReq := &SegmentSceneRequest{} openapiutil.Convert(request, segmentSceneReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentSceneReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentSceneResp, _err := client.SegmentSceneWithOptions(segmentSceneReq, runtime) if _err != nil { return _result, _err } _result = segmentSceneResp return _result, _err } // @param request - SegmentSkinRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentSkinResponse func (client *Client) SegmentSkinWithOptions(request *SegmentSkinRequest, runtime *util.RuntimeOptions) (_result *SegmentSkinResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } body := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.URL)) { body["URL"] = request.URL } req := &openapi.OpenApiRequest{ Body: openapiutil.ParseToMap(body), } params := &openapi.Params{ Action: tea.String("SegmentSkin"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentSkinResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentSkinRequest // // @return SegmentSkinResponse func (client *Client) SegmentSkin(request *SegmentSkinRequest) (_result *SegmentSkinResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentSkinResponse{} _body, _err := client.SegmentSkinWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentSkinAdvance(request *SegmentSkinAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentSkinResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentSkinReq := &SegmentSkinRequest{} openapiutil.Convert(request, segmentSkinReq) if !tea.BoolValue(util.IsUnset(request.URLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.URLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentSkinReq.URL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentSkinResp, _err := client.SegmentSkinWithOptions(segmentSkinReq, runtime) if _err != nil { return _result, _err } _result = segmentSkinResp return _result, _err } // @param request - SegmentSkyRequest // // @param runtime - runtime options for this request RuntimeOptions // // @return SegmentSkyResponse func (client *Client) SegmentSkyWithOptions(request *SegmentSkyRequest, runtime *util.RuntimeOptions) (_result *SegmentSkyResponse, _err error) { _err = util.ValidateModel(request) if _err != nil { return _result, _err } query := map[string]interface{}{} if !tea.BoolValue(util.IsUnset(request.ImageURL)) { query["ImageURL"] = request.ImageURL } req := &openapi.OpenApiRequest{ Query: openapiutil.Query(query), } params := &openapi.Params{ Action: tea.String("SegmentSky"), Version: tea.String("2019-12-30"), Protocol: tea.String("HTTPS"), Pathname: tea.String("/"), Method: tea.String("POST"), AuthType: tea.String("AK"), Style: tea.String("RPC"), ReqBodyType: tea.String("formData"), BodyType: tea.String("json"), } _result = &SegmentSkyResponse{} _body, _err := client.CallApi(params, req, runtime) if _err != nil { return _result, _err } _err = tea.Convert(_body, &_result) return _result, _err } // @param request - SegmentSkyRequest // // @return SegmentSkyResponse func (client *Client) SegmentSky(request *SegmentSkyRequest) (_result *SegmentSkyResponse, _err error) { runtime := &util.RuntimeOptions{} _result = &SegmentSkyResponse{} _body, _err := client.SegmentSkyWithOptions(request, runtime) if _err != nil { return _result, _err } _result = _body return _result, _err } func (client *Client) SegmentSkyAdvance(request *SegmentSkyAdvanceRequest, runtime *util.RuntimeOptions) (_result *SegmentSkyResponse, _err error) { // Step 0: init client accessKeyId, _err := client.Credential.GetAccessKeyId() if _err != nil { return _result, _err } accessKeySecret, _err := client.Credential.GetAccessKeySecret() if _err != nil { return _result, _err } securityToken, _err := client.Credential.GetSecurityToken() if _err != nil { return _result, _err } credentialType := client.Credential.GetType() openPlatformEndpoint := client.OpenPlatformEndpoint if tea.BoolValue(util.Empty(openPlatformEndpoint)) { openPlatformEndpoint = tea.String("openplatform.aliyuncs.com") } if tea.BoolValue(util.IsUnset(credentialType)) { credentialType = tea.String("access_key") } authConfig := &openapi.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, SecurityToken: securityToken, Type: credentialType, Endpoint: openPlatformEndpoint, Protocol: client.Protocol, RegionId: client.RegionId, } authClient, _err := openplatform.NewClient(authConfig) if _err != nil { return _result, _err } authRequest := &openplatform.AuthorizeFileUploadRequest{ Product: tea.String("imageseg"), RegionId: client.RegionId, } authResponse := &openplatform.AuthorizeFileUploadResponse{} ossConfig := &oss.Config{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, Type: tea.String("access_key"), Protocol: client.Protocol, RegionId: client.RegionId, } ossClient, _err := oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj := &fileform.FileField{} ossHeader := &oss.PostObjectRequestHeader{} uploadRequest := &oss.PostObjectRequest{} ossRuntime := &ossutil.RuntimeOptions{} openapiutil.Convert(runtime, ossRuntime) segmentSkyReq := &SegmentSkyRequest{} openapiutil.Convert(request, segmentSkyReq) if !tea.BoolValue(util.IsUnset(request.ImageURLObject)) { authResponse, _err = authClient.AuthorizeFileUploadWithOptions(authRequest, runtime) if _err != nil { return _result, _err } ossConfig.AccessKeyId = authResponse.Body.AccessKeyId ossConfig.Endpoint = openapiutil.GetEndpoint(authResponse.Body.Endpoint, authResponse.Body.UseAccelerate, client.EndpointType) ossClient, _err = oss.NewClient(ossConfig) if _err != nil { return _result, _err } fileObj = &fileform.FileField{ Filename: authResponse.Body.ObjectKey, Content: request.ImageURLObject, ContentType: tea.String(""), } ossHeader = &oss.PostObjectRequestHeader{ AccessKeyId: authResponse.Body.AccessKeyId, Policy: authResponse.Body.EncodedPolicy, Signature: authResponse.Body.Signature, Key: authResponse.Body.ObjectKey, File: fileObj, SuccessActionStatus: tea.String("201"), } uploadRequest = &oss.PostObjectRequest{ BucketName: authResponse.Body.Bucket, Header: ossHeader, } _, _err = ossClient.PostObject(uploadRequest, ossRuntime) if _err != nil { return _result, _err } segmentSkyReq.ImageURL = tea.String("http://" + tea.StringValue(authResponse.Body.Bucket) + "." + tea.StringValue(authResponse.Body.Endpoint) + "/" + tea.StringValue(authResponse.Body.ObjectKey)) } segmentSkyResp, _err := client.SegmentSkyWithOptions(segmentSkyReq, runtime) if _err != nil { return _result, _err } _result = segmentSkyResp return _result, _err }