Release MergeImageFace.

This commit is contained in:
sdk-team
2023-04-21 05:49:35 +00:00
parent 5ca855fea0
commit 12ce668e31
7 changed files with 106 additions and 1 deletions

View File

@@ -1 +1 @@
1.36.1535
1.36.1536

View File

@@ -34,6 +34,19 @@ namespace AlibabaCloud
public:
struct Data
{
struct FaceInfosItem
{
struct FaceRect
{
std::string x;
std::string y;
std::string height;
std::string width;
};
FaceRect faceRect;
std::string templateFaceID;
};
std::vector<FaceInfosItem> faceInfos;
std::string templateId;
};

View File

@@ -28,10 +28,16 @@ namespace Facebody {
namespace Model {
class ALIBABACLOUD_FACEBODY_EXPORT MergeImageFaceRequest : public RpcServiceRequest {
public:
struct MergeInfos {
std::string imageURL;
std::string templateFaceID;
};
MergeImageFaceRequest();
~MergeImageFaceRequest();
bool getFormatResultToJson() const;
void setFormatResultToJson(bool formatResultToJson);
std::vector<MergeInfos> getMergeInfos() const;
void setMergeInfos(const std::vector<MergeInfos> &mergeInfos);
std::string getUserId() const;
void setUserId(const std::string &userId);
std::string getOssFile() const;
@@ -42,14 +48,21 @@ public:
void setRequestProxyBy(const std::string &requestProxyBy);
std::string getImageURL() const;
void setImageURL(const std::string &imageURL);
bool getAddWatermark() const;
void setAddWatermark(bool addWatermark);
std::string getModelVersion() const;
void setModelVersion(const std::string &modelVersion);
private:
bool formatResultToJson_;
std::vector<MergeInfos> mergeInfos_;
std::string userId_;
std::string ossFile_;
std::string templateId_;
std::string requestProxyBy_;
std::string imageURL_;
bool addWatermark_;
std::string modelVersion_;
};
} // namespace Model
} // namespace Facebody

View File

@@ -36,10 +36,23 @@ namespace AlibabaCloud
{
struct ElementsItem
{
struct FaceInfosItem
{
struct FaceRect
{
std::string x;
std::string y;
std::string height;
std::string width;
};
FaceRect faceRect;
std::string templateFaceID;
};
std::string templateURL;
std::string userId;
std::string createTime;
std::string updateTime;
std::vector<ElementsItem::FaceInfosItem> faceInfos;
std::string templateId;
};
std::vector<ElementsItem> elements;

View File

@@ -42,6 +42,23 @@ void AddFaceImageTemplateResult::parse(const std::string &payload)
auto dataNode = value["Data"];
if(!dataNode["TemplateId"].isNull())
data_.templateId = dataNode["TemplateId"].asString();
auto allFaceInfosNode = dataNode["FaceInfos"]["FaceInfosItem"];
for (auto dataNodeFaceInfosFaceInfosItem : allFaceInfosNode)
{
Data::FaceInfosItem faceInfosItemObject;
if(!dataNodeFaceInfosFaceInfosItem["TemplateFaceID"].isNull())
faceInfosItemObject.templateFaceID = dataNodeFaceInfosFaceInfosItem["TemplateFaceID"].asString();
auto faceRectNode = value["FaceRect"];
if(!faceRectNode["X"].isNull())
faceInfosItemObject.faceRect.x = faceRectNode["X"].asString();
if(!faceRectNode["Y"].isNull())
faceInfosItemObject.faceRect.y = faceRectNode["Y"].asString();
if(!faceRectNode["Height"].isNull())
faceInfosItemObject.faceRect.height = faceRectNode["Height"].asString();
if(!faceRectNode["Width"].isNull())
faceInfosItemObject.faceRect.width = faceRectNode["Width"].asString();
data_.faceInfos.push_back(faceInfosItemObject);
}
if(!value["Code"].isNull())
code_ = value["Code"].asString();
if(!value["Message"].isNull())

View File

@@ -34,6 +34,20 @@ void MergeImageFaceRequest::setFormatResultToJson(bool formatResultToJson) {
setParameter(std::string("FormatResultToJson"), formatResultToJson ? "true" : "false");
}
std::vector<MergeImageFaceRequest::MergeInfos> MergeImageFaceRequest::getMergeInfos() const {
return mergeInfos_;
}
void MergeImageFaceRequest::setMergeInfos(const std::vector<MergeImageFaceRequest::MergeInfos> &mergeInfos) {
mergeInfos_ = mergeInfos;
for(int dep1 = 0; dep1 != mergeInfos.size(); dep1++) {
auto mergeInfosObj = mergeInfos.at(dep1);
std::string mergeInfosObjStr = std::string("MergeInfos") + "." + std::to_string(dep1 + 1);
setBodyParameter(mergeInfosObjStr + ".ImageURL", mergeInfosObj.imageURL);
setBodyParameter(mergeInfosObjStr + ".TemplateFaceID", mergeInfosObj.templateFaceID);
}
}
std::string MergeImageFaceRequest::getUserId() const {
return userId_;
}
@@ -79,3 +93,21 @@ void MergeImageFaceRequest::setImageURL(const std::string &imageURL) {
setBodyParameter(std::string("ImageURL"), imageURL);
}
bool MergeImageFaceRequest::getAddWatermark() const {
return addWatermark_;
}
void MergeImageFaceRequest::setAddWatermark(bool addWatermark) {
addWatermark_ = addWatermark;
setBodyParameter(std::string("AddWatermark"), addWatermark ? "true" : "false");
}
std::string MergeImageFaceRequest::getModelVersion() const {
return modelVersion_;
}
void MergeImageFaceRequest::setModelVersion(const std::string &modelVersion) {
modelVersion_ = modelVersion;
setBodyParameter(std::string("ModelVersion"), modelVersion);
}

View File

@@ -54,6 +54,23 @@ void QueryFaceImageTemplateResult::parse(const std::string &payload)
elementsItemObject.templateId = dataNodeElementsElementsItem["TemplateId"].asString();
if(!dataNodeElementsElementsItem["TemplateURL"].isNull())
elementsItemObject.templateURL = dataNodeElementsElementsItem["TemplateURL"].asString();
auto allFaceInfosNode = dataNodeElementsElementsItem["FaceInfos"]["FaceInfosItem"];
for (auto dataNodeElementsElementsItemFaceInfosFaceInfosItem : allFaceInfosNode)
{
Data::ElementsItem::FaceInfosItem faceInfosObject;
if(!dataNodeElementsElementsItemFaceInfosFaceInfosItem["TemplateFaceID"].isNull())
faceInfosObject.templateFaceID = dataNodeElementsElementsItemFaceInfosFaceInfosItem["TemplateFaceID"].asString();
auto faceRectNode = value["FaceRect"];
if(!faceRectNode["X"].isNull())
faceInfosObject.faceRect.x = faceRectNode["X"].asString();
if(!faceRectNode["Y"].isNull())
faceInfosObject.faceRect.y = faceRectNode["Y"].asString();
if(!faceRectNode["Height"].isNull())
faceInfosObject.faceRect.height = faceRectNode["Height"].asString();
if(!faceRectNode["Width"].isNull())
faceInfosObject.faceRect.width = faceRectNode["Width"].asString();
elementsItemObject.faceInfos.push_back(faceInfosObject);
}
data_.elements.push_back(elementsItemObject);
}
if(!value["Code"].isNull())