开发者社区 问答 正文

AI Earth有影像超分辨率的函数吗?我想在本地SDK实现.

AI Earth有影像超分辨率的函数吗?我想在本地SDK实现.

展开
收起
三分钟热度的鱼 2023-08-22 16:16:21 91 分享 版权
1 条回答
写回答
取消 提交回答
  • 可以试一下这段代码:
    def sync_create_job(data_id: str) -> (JobStatus, str):
    createAiJobReq: CreateAIJobRequest = CreateAIJobRequest()
    createAiJobReq.job_name = 'openapi_create_job'
    createAiJobReqInputSrc = CreateAIJobRequestInputsSrc()
    createAiJobReqInputSrc.data_id = data_id
    createAiJobReqInput = CreateAIJobRequestInputs()
    createAiJobReqInput.src = createAiJobReqInputSrc
    createAiJobReqInput.idx = 1
    createAiJobReq.inputs = [createAiJobReqInput]
    createAiJobReq.app = 'GF_SUPER_RESOLUTION'
    createAiJobReq.confidence = 50
    createAiJobReq.area_threshold = 1

    createAiJobResp: CreateAIJobResponse = CLIENT.create_aijob(createAiJobReq)
    job_id = createAiJobResp.body.jobs[0].job_id
    
    while True:
        get_job_req: GetJobsRequest = GetJobsRequest()
        get_job_req.job_ids = [job_id]
    
        get_job_resp: GetJobsResponse = CLIENT.get_jobs(get_job_req)
        job_status = JobStatus(get_job_resp.body.list[0].status)
        print(f"JobId: {job_id}, jobStatus: {job_status}")
        if job_status == JobStatus.FINISHED:
            out_data_id = get_job_resp.body.list[0].job_out_data_id
            out_data_type = JobOutDataType(get_job_resp.body.list[0].out_data_type)
            break
        elif job_status == JobStatus.ERROR:
            raise ValueError(f"{job_id} error")
        else:
            time.sleep(3)
    
    return job_status, out_data_id   相关的OpenAPI的案例,可以查阅这个文档:
    

    https://engine-aiearth.aliyun.com/docs/page/api?d=5cacbf#heading-1 此回答整理自钉群“AI Earth地球科学云平台交流群”

    2023-08-22 16:36:51
    赞同 展开评论