百度【拉伸图像恢复】AI技术快速开发入门

图快修——产品需求文档 产品原型链接由于图片的分辨率的问题,当我们放大图片的时候会变得模糊,或者拉伸图片适应窗口的时候会发生变形这种体验非常不好。所以让图片无损放大优化,用户可以看到更多的细节;使拉伸图片不变形和去除图片的遮挡物更好地适应用户需求,不让照片的本身限制用户不同的需求,根据不同用户的需求随心改动又不改变照片的本身。根据此需求,我们的产品利用百度AI开放平台上“图像技术-图像无损放大、拉伸图像恢复、图像修复”的API功能,配以镜头扫描技术使图片得到更好的放大、拉伸、修复。用户可以从本地上传需要放大尺寸的照片,或者使图片拉 阅读详情

一、功能描述

当我们看电影的时候,有时候如果电影的比例不对,会发现电影看的相当别扭。同理,当我们看一张图片时,如果感到这张图片让人看起来很别扭,那就有可能是这张图片的长宽比例不对,这时候就可以采取百度拉伸图片恢复技术,将图像内容恢复成正常比例。

二、使用攻略

说明:本文采用C# 语言,开发环境为.Net Core 2.1,采用在线API接口方式实现。
(1)平台接入
登陆 百度智能云-管理中心 创建 “图像处理”应用,获取 “API Key ”和 “Secret Key” :https://console.bce.baidu.com/ai/?_=1564037948120#/ai/imageprocess/overview/index

(2)接口文档

文档地址:https://ai.baidu.com/docs#/ImageProcessing-API/f83bad8b

接口描述:自动识别过度拉伸的图像,将图像内容恢复成正常比例。

请求说明

返回说明

(3)源码共享
3.1-根据 API Key 和 Secret Key 获取 AccessToken

        /// 
        /// 获取百度access_token
        /// 
        /// API Key
        /// Secret Key
        /// 
        public static string GetAccessToken(string clientId, string clientSecret)
        {
            string authHost = "https://aip.baidubce.com/oauth/2.0/token";
            HttpClient client = new HttpClient();
            List> paraList = new List>();
            paraList.Add(new KeyValuePair("grant_type", "client_credentials"));
            paraList.Add(new KeyValuePair("client_id", clientId));
            paraList.Add(new KeyValuePair("client_secret", clientSecret));

            HttpResponseMessage response = client.PostAsync(authHost, new FormUrlEncodedContent(paraList)).Result;
            string result = response.Content.ReadAsStringAsync().Result;
            JObject jo = (JObject)JsonConvert.DeserializeObject(result);
            string token = jo["access_token"].ToString();
            return token;
        }

 

3.2-调用API接口获取识别结果

1、在Startup.cs 文件 的 Configure(IApplicationBuilder app, IHostingEnvironment env) 方法中开启虚拟目录映射功能:

            string webRootPath = HostingEnvironment.WebRootPath;//wwwroot目录

            app.UseStaticFiles(new StaticFileOptions
            {
                FileProvider = new PhysicalFileProvider(
                    Path.Combine(webRootPath, "Uploads", "BaiduAIs")),
                RequestPath = "/BaiduAIs"
            });

 

2、 建立Index.cshtml文件
2.1 前台代码:    由于html代码无法原生显示,只能简单说明一下:

    主要是一个form表单,需要设置属性enctype="multipart/form-data",否则无法上传图片;

    form表单里面有四个控件:

    一个Input:type="file",asp-for="FileUpload" ,上传图片用;

    一个Input:type="submit",asp-page-handler="StretchRestore" ,提交并返回识别结果。

    一个img:src="@Model.curPath",显示需要识别的图片。

    一个img:src="@Model.imgProcessPath",显示车辆分割后的前景抠图。

    最后显示后台 msg 字符串列表信息,如果需要输出原始Html代码,则需要使用@Html.Raw()函数。

2.2 后台代码:

        [BindProperty]
        public IFormFile FileUpload { get; set; }
        [BindProperty]
        public string ImageUrl { get; set; }
        private readonly IHostingEnvironment HostingEnvironment;
        public List msg = new List();
        public string curPath { get; set; }
        public string imgProcessPath { get; set; }

        public ImageProcessModel(IHostingEnvironment hostingEnvironment)
        {
            HostingEnvironment = hostingEnvironment;
        }

        public async Task OnPostStretchRestoreAsync()
        {
            if (FileUpload is null)
            {
                ModelState.AddModelError(string.Empty, "本地图片!");
            }
            if (!ModelState.IsValid)
            {
                return Page();
            }

            msg = new List();

            string webRootPath = HostingEnvironment.WebRootPath;//wwwroot目录
            string fileDir = Path.Combine(webRootPath, "Uploads//BaiduAIs//");
            string imgName = await UploadFile(FileUpload, fileDir);

            string fileName = Path.Combine(fileDir, imgName);
            string imgBase64 = Common.GetFileBase64(fileName);
            curPath = Path.Combine("/BaiduAIs/", imgName);//需在Startup.cs 文件 的 Configure(IApplicationBuilder app, IHostingEnvironment env)方法中开启虚拟目录映射功能

            string result = GetImageJson(imgBase64, “你的API KEY”, “你的SECRET KEY”);
            JObject jo = (JObject)JsonConvert.DeserializeObject(result);

            try
            {
                string imageProcessBase64 = jo["image"].ToString();
                msg.Add("拉伸图像恢复");
                msg.Add("log_id:" + jo["log_id"].ToString());
                string processImgName = Guid.NewGuid().ToString("N") + ".png";
                string imgSavedPath = Path.Combine(webRootPath, "Uploads//BaiduAIs//", processImgName);
                imgProcessPath = Path.Combine("BaiduAIs//", processImgName);
                await GetFileFromBase64(imageProcessBase64, imgSavedPath);
            }
            catch (Exception e)
            {
                msg.Add(result);
            }

            return Page();
        }

        /// 
        /// 上传文件,返回文件名
        /// 
        /// 文件上传控件
        /// 文件绝对路径
        /// 
        public static async Task UploadFile(IFormFile formFile, string fileDir)
        {
            if (!Directory.Exists(fileDir))
            {
                Directory.CreateDirectory(fileDir);
            }
            string extension = Path.GetExtension(formFile.FileName);
            string imgName = Guid.NewGuid().ToString("N") + extension;
            var filePath = Path.Combine(fileDir, imgName);

            using (var fileStream = new FileStream(filePath, FileMode.Create, FileAccess.Write))
            {
                await formFile.CopyToAsync(fileStream);
            }

            return imgName;
        }

        /// 
        /// 返回图片的base64编码
        /// 
        /// 文件绝对路径名称
        /// 
        public static String GetFileBase64(string fileName)
        {
            FileStream filestream = new FileStream(fileName, FileMode.Open);
            byte[] arr = new byte[filestream.Length];
            filestream.Read(arr, 0, (int)filestream.Length);
            string baser64 =  Convert.ToBase64String(arr);
            filestream.Close();
            return baser64;
        }

        /// 
        /// 文件base64解码
        /// 
        /// 文件base64编码
        /// 生成文件路径
        public static async Task GetFileFromBase64(string base64Str, string outPath)
        {
            var contents = Convert.FromBase64String(base64Str);
            using (var fs = new FileStream(outPath, FileMode.Create, FileAccess.Write))
            {
                fs.Write(contents, 0, contents.Length);
                fs.Flush();
            }
        }

        /// 
        /// 图像识别Json字符串
        /// 
        /// 图片base64编码
        /// API Key
        /// Secret Key
        /// 
        public static string GetImageJson(string strbaser64, string clientId, string clientSecret)
        {
            string token = GetAccessToken(clientId, clientSecret);
            string host = "https://aip.baidubce.com/rest/2.0/image-process/v1/stretch_restore?access_token=" + token;
            Encoding encoding = Encoding.Default;
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(host);
            request.Method = "post";
            request.KeepAlive = true;
            string str = "image=" + HttpUtility.UrlEncode(strbaser64);
            byte[] buffer = encoding.GetBytes(str);
            request.ContentLength = buffer.Length;
            request.GetRequestStream().Write(buffer, 0, buffer.Length);
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.Default);
            string result = reader.ReadToEnd();
            return result;
        }

三、效果测试
1、页面:

2、识别结果:

2.1

2.2

2.3

四、使用结果

从上图可以看出,百度的拉伸图片恢复技术还是不错的,基本上能将图片恢复成正常的比例,让人看后感觉顺眼多了。

混元3D 3.0:6分钟生成可编辑Blender模型的AI建模新范式 AI生成3D模型正从‘视觉拟合’迈向‘生产就绪’,核心在于能否输出符合工业标准的四边形拓扑、语义化UV与原生PBR材质——这正是隐式-显式协同生成架构的关键突破。相比NeRF易产三角面废稿、GAN常出幽灵结构,该技术通过符号化骨架引导+参数化曲面片拼接,实现几何可控、拓扑干净、贴图对齐,让生成结果不再是展示球,而是可直接导入Blender进行雕刻、绑定与动画的可编辑资产。典型应用场景包括IP衍生品快速原型验证、电商3D商品图制作、独立游戏角色前期开发等轻量级但高频的建模需求,尤其适配手绘线稿、硬表面设计与风 阅读详情

相关推荐

POE仿生硬件设计法:原理驱动的工程化落地方法论

仿生硬件系统并非简单模仿生物形态,而是将自然界的物理原理转化为可量化、可制造、可验证的工程参数。其核心在于跨越生物学与工程学的语言鸿沟,以可建模的物理机制(如能量耗散、相变调控、结构屈曲)为起点,通过多生物交叉验证筛选适配原理的自然范例,最终在材料、工艺与系统集成约束下完成硬件实现。该方法显著提升仿生设计的可重复性与量产可行性,广泛应用于抗冲击无人机、工业传感器、医疗机器人等对可靠性、环境适应性与精度有严苛要求的领域。关键词:Bio-Inspired Hardware Systems、POE Model。

weixin_34128839的博客 497

百度AI攻略:拉伸图像恢复

1.功能描述: 大家在做图片处理的的时候经常会碰到过度拉伸的图片,如果数量少手工调整就可以了,如果多的话就很麻烦了。百度自动识别过度拉伸的图像,将图像内容恢复成正常比例。此功能可应用于提升视频、图片质量,对视频截图/封面图、网站图片进行处理,找出并修复存在过度拉伸问题的视频、图片,提升内容质量。 2.平台接入 拉伸图像恢复接入网址:https://console.bce.baidu.com/...

2212

自动驾驶日志数据自动化提取3D资产:从真实路测到高保真仿真场景构建

在自动驾驶和计算机视觉领域,三维重建与数字资产生成是连接真实世界数据与虚拟仿真环境的核心技术。其基本原理是通过多传感器融合与计算机视觉算法,从序列图像或点云数据中恢复物体的三维几何与外观信息。这项技术的核心价值在于能够将海量的真实世界数据转化为可编程、可复用的数字资产,从而极大降低高保真仿真场景的构建成本,并提升其真实性与多样性。在应用场景上,它不仅是自动驾驶仿真测试的关键支撑,也为数据增强、合成数据生成乃至数字孪生提供了底层资产来源。本文聚焦于如何从自动驾驶车辆采集的原始日志中,系统性地自动化提取与优化可

378

百度大脑拉伸图像恢复接口使用攻略

作者:才能我浪费99 1.功能描述: 大家在做图片处理的的时候经常会碰到过度拉伸的图片,如果数量少手工调整就可以了,如果多的话就很麻烦了。百度自动识别过度拉伸的图像,将图像内容恢复成正常比例。此功能可应用于提升视频、图片质量,对视频截图/封面图、网站图片进行处理,找出并修复存在过度拉伸问题的视频、图片,提升内容质量。 2.平台接入 拉伸图像恢复接入网址:https://console.bce.ba...

百度大脑 2118

冈萨雷斯数字图像处理MATLAB源码解析:从直方图到频域滤波实战指南

数字图像处理是计算机视觉与人工智能领域的基石,其核心算法涉及灰度变换、空间滤波、频域分析等经典理论。MATLAB作为工程实践中广泛使用的科学计算环境,凭借强大的矩阵运算能力和丰富的图像处理工具箱,成为算法验证与原型开发的首选工具。直方图均衡化通过累积分布函数拉伸对比度,是理解灰度映射的经典案例;而频域滤波借助傅里叶变换与滤波器设计,能直观揭示图像在频率域的特性。这些技术广泛应用于医学影像增强、遥感图像分析、工业视觉检测等场景。冈萨雷斯《数字图像处理(MATLAB版)》配套源码将教材中的每个公式转化为可运行的

weixin_31421613的博客 277

可以无损放大图片工具,让图片更大更清晰

可以无损放大图片的东东,大家试试就可以知道了!本人建议,确实不错!

实现不均匀的图像拉伸

#include "opencv2/highgui/highgui.hpp" #include "opencv2/imgproc/imgproc.hpp" #include <iostream> using namespace cv; using namespace std; #define K 2 //表示取2个点 #define thre...

favomj的博客 568

FusionCompute8.0.0实战指南:从零部署CNA与VRM环境

本文以华为FusionCompute 8.0.0为例,详细介绍了如何利用老旧硬件从零开始部署CNA计算节点与VRM管理节点的完整实战指南。内容涵盖实验环境准备、CNA安装与网络配置、VRM虚拟机部署方案对比,并提供了典型故障排查与性能调优技巧,帮助读者低成本构建可用的虚拟化学习环境。

weixin_29306317的博客 315

百度AI 开放平台 - 各大AI 开放平台开放能力解读和分析,技术的应用场景,技术前景

文章目录百度AI 开放平台 - 各大AI 开放平台开放能力解读和分析,技术的应用场景,技术前景1、语音技术2、图像技术3、文字处理技术4、人脸与人体识别5、自然语言处理6、视频技术,AR,VR 百度AI 开放平台 - 各大AI 开放平台开放能力解读和分析,技术的应用场景,技术前景 1、语音技术 语音识别技术 应用场景 语音输入 摆脱按键操作,通过语音识别直接输入文字,快速返回识别结果,可应用于游戏文字输入、社交聊天、语音指令等多个场景,提高输入效率及体验 语音搜索 搜索内容直接以语音的方式输

简简单单Onlinezuozuo 2万+

从专利库到Zemax:一个6mm定焦镜头从零到交付的完整设计流程(含CodeV转换技巧)

本文详细介绍了6mm定焦镜头从专利库检索到最终交付的全流程设计,重点解析了CodeV与Zemax工具链的无缝衔接技巧。通过实际案例展示规格定义、专利筛选、结构适配、非球面优化等关键步骤,帮助光学设计工程师提升设计效率和制造良率。特别包含CodeV转换Zemax的实用技巧,适用于机器视觉和安防镜头开发。

weixin_42561040的博客 161

【5G演进】4G到5G演进之网络架构与协议栈

4G到5G演进之网络架构与协议栈

Learning makes me happy (0^◇^0) 5532

十余项AI新能力发布,百度大脑开放日第二期为110万开发者上干货

AI技术的发展与应用落地如火如荼,智能时代的大幕正在缓缓拉开。上月,百度大脑在首期开放日上一口气开放了24项全新的AI技术,好评尚在业界传递。4月25日,第二期百度大脑开...

PaddlePaddle 467

【图像超分】论文复现:新手入门!Pytorch实现SRCNN,数据预处理、模型训练、测试、评估全流程详解,注释详细,简单修改就可以训练你自己的图像数据,有训练好的模型下载地址,随取随用

【图像超分】论文精读:Image Super-Resolution Using Deep Convolutional Networks(SRCNN)请配合上述论文精读文章使用,效果更佳!图像超分辨率SRCNN和FSRCNN复现代码,除基本的网络实现外,还有特征图可视化,PSNR曲线图可视化,测试自己的图像数据等不想理解原理,希望直接跑通然后应用到自己的图像数据的同学,请直接下载上面的代码,有训练好的模型,直接用即可。具体使用方式见代码中的README!有问题来本文评论区留言!准备数据集,以及数据预处理。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 2万+

AI驱动图像升级:Super Resolution行业落地实操手册

本文介绍了如何在星图GPU平台上自动化部署AI 超清画质增强 - Super Resolutio镜像,实现低清图像的3倍无损放大与细节重建。用户可通过Web界面一键上传手机截图、老照片或电商素材,快速生成高清图片,广泛应用于电商主图优化、历史资料修复及新媒体内容升级等典型场景。

weixin_35459464的博客 94

2025国赛数学建模A题 完整Python代码 烟幕干扰弹的投放策略

常量定义G = 9.8 # 重力加速度 m/s²V_SMOKE_SINK = 3 # 烟幕下沉速度 m/sMISSILE_SPEED = 300 # 导弹速度 m/sEFFECTIVE_RADIUS = 10 # 有效遮蔽半径 mEFFECTIVE_DURATION = 20 # 有效遮蔽时间 sTARGET_POS = np.array([0, 200, 0]) # 目标位置FALSE_TARGET_POS = np.array([0, 0, 0]) # 假目标位置# 初始位置。

YOLO 1106

AS7341可见光谱传感器原理图设计,已量产(光线传感器)

最近在做便携式环境光光谱检测项目时,我们基于 ams 的 AS7341 搭了一套硬件电路 —— 这颗芯片算是业内新一代的光谱传感 IC,8 个可见光通道 + NIR + 闪烁检测的配置,加上 6 路并行 16 位 ADC,数据吞吐能力确实够顶。今天就拆解下这个模块的硬件设计细节,聊聊实际做板时的那些考量点。

不脱发的程序猿 642

AI天气预报:用深度学习重构气象预测范式

天气预报正从依赖物理方程的数值模拟,转向基于时空图像数据的深度学习建模。其核心原理是将大气状态视为球面动态图像序列,利用卷积神经网络直接学习历史再分析数据中的演变规律,绕过传统数值天气预报(NWP)的计算瓶颈与参数化缺陷。该技术具备分钟级推理、高分辨率适配与多源数据融合能力,显著提升中短期(1–14天)关键气象要素如500hPa位势高度和地表温度的预测精度。典型应用已覆盖航空调度、风电并网与精准农业等对时效性与空间粒度要求极高的场景。本文聚焦DLWP系统,深入解析其立方球网格、U-Net架构与自回归反馈机制

dicha7140的博客 529

Openclaw 附录B 常用Skills清单

核心作用支持URL、网页、PDF、图片、音频和YouTube视频的摘要与字幕提取,由OpenClaw创始人@steipete开发的官方内置Skill。安装⚠️说明:原推荐的summarize未在ClawHub验证到,YouTube字幕提取功能已内置于summarize中。使用场景“提取这个2小时Next.js教程视频的核心代码逻辑,按章节整理成学习笔记”推荐指数:⭐⭐⭐⭐。

Maynor的博客 857

豆包不是AI工具,而是全民可用的‘生活动词’

人工智能正从技术名词转向日常动词——它不再代表复杂的算法或参数,而是‘点一下查医保’‘喊一声解题’‘拍张照翻译路牌’的具体动作。这种转化依赖于极简交互、人格化智能体和多模态语义理解等关键技术能力,其核心价值在于降低认知门槛、建立用户信任、适配真实生活节奏。在中老年数字融入、教育辅助、职场提效、银发健康等高频场景中,AI作为‘可感、可用、可信赖’的生活动词,已展现出比纯技术指标更深远的社会渗透力。本文聚焦豆包这一典型实践,解析其如何将大模型能力无缝缝入千万普通人的衣食住行与学习工作。

470

09 SAP CPI 访问公共API接口

我在网上找了一个公共API,入参输入汉字返回拼音。至此,一个真正的访问API的接口就做好了。点击保存时可看到红叉报错。

SAP CPI 477

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

长沙红胖子Qt·西安(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中...

长沙红胖子 Qt・西安,本人拥有省级科研团队从业背景,研发团队产出所有项目、产品方案和研发无分包、无外包、无AI代笔,长期深耕双一流体系高精尖技术配套研发。博客主动剥离复杂底层工况机理,专注沉淀高端、特种行业领域Qt工程化落地实战经验。所有内容均为个人梳理总结的通用性工程方法论,只输出可公开的普适技术思路。

长沙红胖子 Qt・西安|省级科研团队从业背景,深耕双一流体系高精尖技术配套研发|剥离高精尖机理,沉淀高端特种行业领域 Qt 工程化落地经验|博文仅分享通用技术总结,输出公开普适工程思路。 164万+

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

AI视觉任务算法全景详解(全部任务类型与对应算法列表)

本文档全面梳理了计算机视觉领域的46类核心任务及600+主流算法,涵盖图像理解、目标检测、3D视觉、图像增强、生成编辑、视频处理等方向。内容包含每类任务的算法原理、演进脉络和工业选型建议,并附6个实用附录(选型速查表、骨干网络对比、数据集汇总等)。适用于算法工程师、视觉AI研究员和技术决策者进行技术调研和项目落地参考,技术栈覆盖深度学习框架与CUDA加速方案。文档采用系统化分类体系,提供从理论到实践的完整指导。

weixin_45590420的博客 443

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

工作中使用到的单词(软件开发)

1.エイリアス   alias 别名 powershell使用 get-help 命令时,会得到与此命令 相关(别名)的命令 2.プロキシ proxy 代 理 3.プロモート   promote 促进,提升   开发的系统新功能上线发布,有时会使用到这个词,比如 STプロモート 还有使用リリース这个词的。比如STリリース。个人认为两者含义相同。 4.見逃し み................................................................

sun0322 6万+

ComfyUI MiniMaxH3工作流:双采样+重绘解决AI视频模糊与闪烁

AI视频生成技术,尤其是基于扩散模型的方案,其核心原理是通过对噪声的迭代去噪过程,从随机噪声中逐步合成连贯的视觉序列。然而,这一过程常面临帧间不一致性、分辨率限制和全局提示词控制滞后等技术挑战,导致生成的视频出现模糊、闪烁和细节丢失等问题,影响了技术的实用价值。为解决这些痛点,工程实践中引入了“双采样”与“重绘”等关键技术模块。双采样通过草稿与精修两阶段生成,在提升初始质量的同时强化帧间一致性;重绘技术则允许对视频的特定帧或区域进行局部修改和精细化控制,实现了从“一次性生成”到“可迭代优化”的流程转变。这些

weixin_33888907的博客 340

深度拆解比亚迪DiLink:从芯片到软件,揭秘智能座舱核心技术架构

智能座舱作为汽车智能化转型的核心载体,其本质是一个融合了汽车电子、消费电子与软件工程的复杂系统。从技术原理上看,它通常采用分层架构设计,底层依托高性能车规级SoC(如高通骁龙SA8155P)提供算力支撑,通过虚拟化技术实现功能安全与生态开放的平衡——例如,将实时操作系统(RTOS)用于仪表等安全关键任务,而将安卓系统用于信息娱乐。其技术价值在于通过服务化框架,将车辆数据、语音交互等底层能力抽象为标准化API,极大降低了车载应用开发门槛,繁荣了车载生态。在应用场景上,这直接赋能了全场景连续语音交互、多屏联动、

weixin_33896726的博客 413
上一篇: 百度【人体检测与属性识别】AI技术快速开发入门
下一篇: Windows 10上使用Ubuntu的优点
Listen2You
博客等级 码龄10年 202粉丝 1001原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值