自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#實(shí)戰(zhàn):圖像清晰度增強(qiáng)介紹和案例實(shí)踐

開(kāi)發(fā) 前端
基于騰訊云深度學(xué)習(xí)等人工智能技術(shù),消除圖片因有損壓縮導(dǎo)致的噪聲,改善因使用濾鏡、拍攝失焦等導(dǎo)致的圖像模糊問(wèn)題,讓圖片的邊緣和細(xì)節(jié)更加清晰自然。

一、圖像清晰度增強(qiáng)介紹

基于騰訊云深度學(xué)習(xí)等人工智能技術(shù),消除圖片因有損壓縮導(dǎo)致的噪聲,改善因使用濾鏡、拍攝失焦等導(dǎo)致的圖像模糊問(wèn)題,讓圖片的邊緣和細(xì)節(jié)更加清晰自然。

二、開(kāi)發(fā)流程

首先登錄騰訊云平臺(tái)開(kāi)通圖片處理服務(wù) 官網(wǎng):https://cloud.tencent.com/product/imageprocess

申請(qǐng)開(kāi)發(fā)密鑰

下載編程語(yǔ)言對(duì)應(yīng)的SDK

開(kāi)發(fā)工具創(chuàng)建項(xiàng)目

引用騰訊圖像處理庫(kù)

根據(jù)業(yè)務(wù)編寫(xiě)代碼

三、請(qǐng)求參數(shù)說(shuō)明

● Region:資源地域,必填,表示操作的資源所屬的地域,比如 ap-shanghai ap-beijing ap-shenzhen 等。

● ImageUrl:圖片URL地址參數(shù)。圖片格式:PNG、JPG、JPEG。 圖片大?。核螺d圖片經(jīng)Base64編碼后不超過(guò)4M。圖片下載時(shí)間不超過(guò)3秒。

● ImageBase64:支持PNG、JPG、JPEG、BMP,不支持 GIF 圖片。圖片經(jīng)過(guò)Base64編碼的內(nèi)容。最大不超過(guò)4M。與ImageUrl同時(shí)存在時(shí)優(yōu)先使用ImageUrl字段。注意:圖片需要Base64編碼,并且要去掉編碼頭部。

四、輸出參數(shù)說(shuō)明

● EnhancedImage:增強(qiáng)后圖片的base64編碼。

示例值:/9j/4AAQSkZJRgABAQAAAQABA…

● RequestId:唯一請(qǐng)求 ID,每次請(qǐng)求都會(huì)返回。排查異常問(wèn)題時(shí)需要提供該次請(qǐng)求的 RequestId。

五、開(kāi)發(fā)實(shí)踐

這里采用SDK+C#語(yǔ)言的方式寫(xiě)一個(gè)WinForm程序。具體操作如下:

首先新建一個(gè)WinForm控制臺(tái)程序EnhanceImageDemo,框架選擇NetFramework4.5.2。

1.安裝依賴庫(kù)TencentCloudSDK.Tiia

通過(guò)命令行:

dotnet add package TencentCloudSDK.Tiia

通過(guò)Nuget 包管理器方式安裝。

打開(kāi)nuget包管理器,搜索 TencentCloudSDK.Tiia,安裝最新穩(wěn)定版本 3.0.957。

2.增加騰訊API調(diào)用配置項(xiàng)

直接在app.config 文件添加,完整的內(nèi)容如下:

<?xml versinotallow="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime versinotallow="v4.0" sku=".NETFramework,Versinotallow=v4.5.2" />
    </startup>
		<appSettings>
			<!--SecretId-->
			<add key="SecretId" value="xxxxxx"/>
			<!--SecretKey-->
			<add key="SecretKey" value="xxxxxx"/>
			<!--地區(qū)選擇ap-shanghai ap-beijing ap-shenzhen 等-->
			<add key="Region" value="ap-shanghai"/>
			<!--圖片輸出目錄-->
			<add key="OutPath" value="D:\Image\"/>
</appSettings>
</configuration>

注意:開(kāi)發(fā)密鑰需要開(kāi)發(fā)者自己申請(qǐng)?zhí)钊肱渲梦募?/span>

3.代碼

主要實(shí)現(xiàn)了網(wǎng)絡(luò)圖片URL調(diào)用圖像增強(qiáng)處理方法生成Base64字符串,然后轉(zhuǎn)換為png圖片,并直接調(diào)用操作系統(tǒng)默認(rèn)的打開(kāi)圖片工具直接打開(kāi)圖片。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using TencentCloud.Common;
using TencentCloud.Common.Profile;
using TencentCloud.Tiia.V20190529;
using TencentCloud.Tiia.V20190529.Models;
using System.Configuration;
namespace EnhanceImageDemo
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        /// <summary>
        /// 圖片增強(qiáng)方法
        /// </summary>
        private void EnhanceImage()
        {
            string url = textBox1.Text.Trim();
            if (!Uri.IsWellFormedUriString(url, UriKind.Absolute))
            {
                MessageBox.Show("請(qǐng)輸入正確的圖片URL");
            }
            else
            {
                // 調(diào)用騰訊云接口的參數(shù)說(shuō)明
                string secretId = ConfigurationManager.AppSettings["SecretId"];
                string secretKey = ConfigurationManager.AppSettings["SecretKey"];
                string region = ConfigurationManager.AppSettings["Region"];
                try
                {
                    // 實(shí)例化一個(gè)認(rèn)證對(duì)象,入?yún)⑿枰獋魅腧v訊云賬戶 SecretId 和 SecretKey,需注意密鑰對(duì)的保密             
                    // 密鑰可前往官網(wǎng)控制臺(tái) https://console.cloud.tencent.com/cam/capi 進(jìn)行獲取
                    Credential cred = new Credential
                    {
                        SecretId = secretId,
                        SecretKey = secretKey
                    };
                    // 實(shí)例化一個(gè)client選項(xiàng),可選的,沒(méi)有特殊需求可以跳過(guò)
                    ClientProfile clientProfile = new ClientProfile();
                    // 實(shí)例化一個(gè)http選項(xiàng),可選的,沒(méi)有特殊需求可以跳過(guò)
                    HttpProfile httpProfile = new HttpProfile();
                    httpProfile.Endpoint = ("tiia.tencentcloudapi.com");
                    clientProfile.HttpProfile = httpProfile;

                    // 實(shí)例化要請(qǐng)求產(chǎn)品的client對(duì)象,clientProfile是可選的
                    TiiaClient client = new TiiaClient(cred, region, clientProfile);
                    // 實(shí)例化一個(gè)請(qǐng)求對(duì)象,每個(gè)接口都會(huì)對(duì)應(yīng)一個(gè)request對(duì)象 傳遞參數(shù),支持網(wǎng)絡(luò)圖片和圖片經(jīng)過(guò)Base64編碼的內(nèi)容
                    EnhanceImageRequest req = new EnhanceImageRequest();
                    //圖片URL地址參數(shù)。圖片格式:PNG、JPG、JPEG。 圖片大?。核螺d圖片經(jīng)Base64編碼后不超過(guò)4M。圖片下載時(shí)間不超過(guò)3秒。
                    req.ImageUrl = url;
                    //ImageBase64 參數(shù) 支持PNG、JPG、JPEG、BMP,不支持 GIF 圖片。圖片經(jīng)過(guò)Base64編碼的內(nèi)容。最大不超過(guò)4M。與ImageUrl同時(shí)存在時(shí)優(yōu)先使用ImageUrl字段。注意:圖片需要Base64編碼,并且要去掉編碼頭部。
                    req.ImageBase64 = "無(wú)";
                    // 返回的resp是一個(gè)EnhanceImageResponse的實(shí)例,與請(qǐng)求對(duì)象對(duì)應(yīng)
                    EnhanceImageResponse resp = client.EnhanceImageSync(req);
                     convertToImage(resp.EnhancedImage);             
                }
                catch (Exception e)
                {
                    MessageBox.Show(e.ToString());
                }
            }
        }

        /// <summary>
        /// base64字符串轉(zhuǎn)換為png
        /// </summary>
        /// <param name="base64String"></param>
        private void convertToImage(string base64String)        
        {
            // 把Base64 字符串解碼為字節(jié)數(shù)組
            byte[] imageBytes = Convert.FromBase64String(base64String);
            // 配置文件圖片圖片輸出目錄
            string path = ConfigurationManager.AppSettings["OutPath"];
            string fileName = path + DateTime.Now.ToString("yyyyMMddHHmmss") + ".png";
            // 將字節(jié)數(shù)組保存為圖片文件
            using (MemoryStream ms = new MemoryStream(imageBytes))
            {
                Image image = Image.FromStream(ms);
                // 保存圖片
                image.Save(fileName, System.Drawing.Imaging.ImageFormat.Png);
                // 調(diào)用系統(tǒng)默認(rèn)程序打開(kāi)圖片文件
                Process.Start(fileName);
            }
        }
        /// <summary>
        /// 按鈕點(diǎn)擊事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnOk_Click(object sender, EventArgs e)
        {
            EnhanceImage();
        }
    }
}

4.運(yùn)行效果

查看調(diào)用接口成功的調(diào)試數(shù)據(jù)。

頁(yè)面運(yùn)行窗體,主要是圖片網(wǎng)絡(luò)地址輸入和轉(zhuǎn)換按鈕。

轉(zhuǎn)換之后成功的效果如下圖:

責(zé)任編輯:姜華 來(lái)源: 小明互聯(lián)網(wǎng)技術(shù)分享社區(qū)
相關(guān)推薦

2022-11-09 18:38:08

視頻清晰度

2009-08-03 18:49:17

C#和Java

2022-10-17 14:59:17

圖像算法

2012-04-18 17:58:48

手機(jī)

2010-03-09 16:26:08

Python列表

2009-08-27 13:37:11

C#類和結(jié)構(gòu)

2009-09-07 16:09:19

C#和Java特點(diǎn)

2009-08-07 09:29:22

C#數(shù)組C#函數(shù)

2009-08-20 18:44:54

C#和ADO.NET

2009-08-12 18:35:36

C# ArrayLis

2009-08-18 16:57:24

VB.NET和C#

2022-04-19 23:51:44

Windows 11微軟語(yǔ)音清晰度

2009-08-25 10:24:29

C# delegate

2009-08-17 16:47:51

C# Anonymou

2009-09-02 17:20:50

C# Parsing

2009-08-10 16:30:56

C# BitmapDa

2023-03-09 15:25:49

2024-12-16 00:50:56

2009-08-12 09:41:28

C# Director

2009-09-03 15:57:11

C# SystemMe
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)