国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種圖片自動(dòng)上色方法以及系統(tǒng)與流程

      文檔序號(hào):11408896閱讀:498來源:國(guó)知局
      一種圖片自動(dòng)上色方法以及系統(tǒng)與流程

      本發(fā)明涉及圖像處理領(lǐng)域,尤其涉及一種應(yīng)用于網(wǎng)站的圖片自動(dòng)上色方法以及系統(tǒng)。



      背景技術(shù):

      網(wǎng)站上經(jīng)常需要向用戶展示一些圖片,但這些圖片全部是黑白的,如果直接放到網(wǎng)頁上,將會(huì)對(duì)網(wǎng)站造成不協(xié)調(diào)的視覺問題。為了滿足網(wǎng)站美觀需求,增加網(wǎng)站對(duì)用戶的吸引力,需要把黑白圖片按照網(wǎng)站的設(shè)計(jì)風(fēng)格上色變成彩色背景白色前景圖片。

      目前的通常做法是使用photoshop等圖片處理軟件先把黑白圖片上色后再上傳到網(wǎng)站進(jìn)行展示。此種方案的主要缺點(diǎn)是:使用photoshop進(jìn)行圖片上色需要專業(yè)的美工專業(yè)人員,每一張圖片都需要美工手工上色,人力成本比較大,處理速度比較慢,而且不能夠在線實(shí)時(shí)對(duì)圖片進(jìn)行上色。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明要解決的技術(shù)問題在于,針對(duì)現(xiàn)有技術(shù)的上述缺陷,提供一種圖片自動(dòng)上色方法以及系統(tǒng)。

      本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:構(gòu)造一種圖片自動(dòng)上色方法,用于對(duì)網(wǎng)站中的圖片進(jìn)行上色,包括:

      s100、將待上色圖像文件原始的二進(jìn)制數(shù)據(jù)轉(zhuǎn)化為第一rgb數(shù)據(jù);

      s200、將第一rgb數(shù)據(jù)轉(zhuǎn)化為第一hsb數(shù)據(jù),將待上色的圖像文件所需要上色的底色的rgb值轉(zhuǎn)化為hsb值;

      s300、基于第一hsb數(shù)據(jù)和底色的hsb值計(jì)算得到第二hsb數(shù)據(jù);

      s400、將第二hsb數(shù)據(jù)轉(zhuǎn)化為第二rgb數(shù)據(jù);

      s500、將第二rgb數(shù)據(jù)轉(zhuǎn)化得到待上色圖像文件上色后的二進(jìn)制數(shù)據(jù)。

      在本發(fā)明所述的圖片自動(dòng)上色方法中,二進(jìn)制數(shù)據(jù)為一維數(shù)組;rgb數(shù)據(jù)、hsb數(shù)據(jù)分別為二維數(shù)組,二維數(shù)組中的每一個(gè)值表示一個(gè)像素的rgb值或者h(yuǎn)sb值;二進(jìn)制數(shù)據(jù)與rgb數(shù)據(jù)之間的轉(zhuǎn)化、rgb數(shù)據(jù)與hsb數(shù)據(jù)之間的轉(zhuǎn)化采用jdk中提供的函數(shù)執(zhí)行。

      在本發(fā)明所述的圖片自動(dòng)上色方法中,步驟s300中所述的基于第一hsb數(shù)據(jù)和底色的hsb值計(jì)算得到第二hsb數(shù)據(jù)包括:

      針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的色相值,分別基于公式h2=h0計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的色相值;

      針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的飽和度值,分別基于公式s2=s0*b1計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的飽和度值;

      針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的亮度值,分別基于公式b2=b0+(1-b1)*(1-b0)計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的亮度值;

      其中,h0、s0、b0分別表示底色的色相值、飽和度值、亮度值,h1、b1分別表示第一hsb數(shù)據(jù)中的一個(gè)像素的hsb值中的色相值、亮度值,h2、s2、b2分別表示第二hsb數(shù)據(jù)中的一個(gè)像素的色相值、飽和度值、亮度值。

      在本發(fā)明所述的圖片自動(dòng)上色方法中,

      所述步驟s100之前包括:接收輸入的待上色圖像文件原始的二進(jìn)制數(shù)據(jù)以及底色的rgb值。

      所述步驟s500之后包括:將上色后的二進(jìn)制數(shù)據(jù)輸出。

      基于同一發(fā)明構(gòu)思,本發(fā)明還公開了一種圖片自動(dòng)上色系統(tǒng),用于對(duì)網(wǎng)站中的圖片進(jìn)行上色,包括:

      二進(jìn)制-rgb轉(zhuǎn)化單元,用于將待上色圖像文件原始的二進(jìn)制數(shù)據(jù)轉(zhuǎn)化為第一rgb數(shù)據(jù);

      rgb-hsb轉(zhuǎn)化單元,用于將第一rgb數(shù)據(jù)轉(zhuǎn)化為第一hsb數(shù)據(jù),將待上色的圖像文件所需要上色的底色的rgb值轉(zhuǎn)化為hsb值;

      上色處理單元,用于基于第一hsb數(shù)據(jù)和底色的hsb值計(jì)算得到第二hsb數(shù)據(jù);

      hsb-rgb轉(zhuǎn)化單元,用于將第二hsb數(shù)據(jù)轉(zhuǎn)化為第二rgb數(shù)據(jù);

      rgb-二進(jìn)制轉(zhuǎn)化單元,用于將第二rgb數(shù)據(jù)轉(zhuǎn)化得到待上色圖像文件上色后的二進(jìn)制數(shù)據(jù)。

      在本發(fā)明所述的圖片自動(dòng)上色系統(tǒng)中,二進(jìn)制數(shù)據(jù)為一維數(shù)組;rgb數(shù)據(jù)、hsb數(shù)據(jù)分別為二維數(shù)組,二維數(shù)組中的每一個(gè)值表示一個(gè)像素的rgb值或者h(yuǎn)sb值;二進(jìn)制數(shù)據(jù)與rgb數(shù)據(jù)之間的轉(zhuǎn)化、rgb數(shù)據(jù)與hsb數(shù)據(jù)之間的轉(zhuǎn)化采用jdk中提供的函數(shù)執(zhí)行。

      在本發(fā)明所述的圖片自動(dòng)上色系統(tǒng)中,所述上色處理單元包括:

      色相值計(jì)算單元,針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的色相值,分別基于公式h2=h0計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的色相值;

      飽和度值計(jì)算單元,針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的飽和度值,分別基于公式s2=s0*b1計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的飽和度值;

      亮度值計(jì)算單元,針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的亮度值,分別基于公式b2=b0+(1-b1)*(1-b0)計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的亮度值;

      其中,h0、s0、b0分別表示底色的色相值、飽和度值、亮度值,h1、b1分別表示第一hsb數(shù)據(jù)中的一個(gè)像素的hsb值中的色相值、亮度值,h2、s2、b2分別表示第二hsb數(shù)據(jù)中的一個(gè)像素的色相值、飽和度值、亮度值。

      在本發(fā)明所述的圖片自動(dòng)上色系統(tǒng)中,系統(tǒng)還包括:

      參數(shù)接收單元,用于接收輸入的待上色圖像文件原始的二進(jìn)制數(shù)據(jù)以及底色的rgb值。

      結(jié)果輸出單元,用于將上色后的二進(jìn)制數(shù)據(jù)輸出。

      實(shí)施本發(fā)明的圖片自動(dòng)上色方法以及系統(tǒng),具有以下有益效果:

      1)能夠減少美工人員投入,有效節(jié)省網(wǎng)站建設(shè)成本;

      2)可以實(shí)時(shí)收錄新圖片,并實(shí)時(shí)在線進(jìn)行圖片上色;

      3)轉(zhuǎn)換質(zhì)量一致性高,避免由于人工疏忽而導(dǎo)致錯(cuò)誤圖片;

      4)能夠與java語言開發(fā)的網(wǎng)站無縫結(jié)合,不需要增加任何其他組件。

      附圖說明

      為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖:

      圖1是本發(fā)明的圖片自動(dòng)上色方法的流程圖;

      圖2是本發(fā)明的實(shí)施例一的流程圖;

      圖3是本發(fā)明的實(shí)施例二的模塊圖。

      具體實(shí)施方式

      為了便于理解本發(fā)明,下面將參照相關(guān)附圖對(duì)本發(fā)明進(jìn)行更全面的描述。附圖中給出了本發(fā)明的典型實(shí)施例。但是,本發(fā)明可以以許多不同的形式來實(shí)現(xiàn),并不限于本文所描述的實(shí)施例。相反地,提供這些實(shí)施例的目的是使對(duì)本發(fā)明的公開內(nèi)容更加透徹全面。

      除非另有定義,本文所使用的所有的技術(shù)和科學(xué)術(shù)語與屬于本發(fā)明的技術(shù)領(lǐng)域的技術(shù)人員通常理解的含義相同。本文中在本發(fā)明的說明書中所使用的術(shù)語只是為了描述具體的實(shí)施例的目的,不是旨在于限制本發(fā)明。

      本說明書中使用的“第一”、“第二”等包含序數(shù)的術(shù)語可用于說明各種構(gòu)成要素,但是這些構(gòu)成要素不受這些術(shù)語的限定。使用這些術(shù)語的目的僅在于將一個(gè)構(gòu)成要素區(qū)別于其他構(gòu)成要素。例如,在不脫離本發(fā)明的權(quán)利范圍的前提下,第一構(gòu)成要素可被命名為第二構(gòu)成要素,類似地,第二構(gòu)成要素也可以被命名為第一構(gòu)成要素。

      參考圖1,本發(fā)明總的思路是:s100、將待上色圖像文件原始的二進(jìn)制數(shù)據(jù)轉(zhuǎn)化為第一rgb數(shù)據(jù);s200、將第一rgb數(shù)據(jù)轉(zhuǎn)化為第一hsb數(shù)據(jù),將待上色的圖像文件所需要上色的底色的rgb值轉(zhuǎn)化為hsb值;s300、基于第一hsb數(shù)據(jù)和底色的hsb值計(jì)算得到第二hsb數(shù)據(jù);s400、將第二hsb數(shù)據(jù)轉(zhuǎn)化為第二rgb數(shù)據(jù);s500、將第二rgb數(shù)據(jù)轉(zhuǎn)化得到待上色圖像文件上色后的二進(jìn)制數(shù)據(jù)。

      為了更好的理解上述技術(shù)方案,下面將結(jié)合說明書附圖以及具體的實(shí)施方式對(duì)上述技術(shù)方案進(jìn)行詳細(xì)的說明,應(yīng)當(dāng)理解本發(fā)明實(shí)施例以及實(shí)施例中的具體特征是對(duì)本申請(qǐng)技術(shù)方案的詳細(xì)的說明,而不是對(duì)本申請(qǐng)技術(shù)方案的限定,在不沖突的情況下,本發(fā)明實(shí)施例以及實(shí)施例中的技術(shù)特征可以相互組合。

      實(shí)施例一

      參考圖2,是本發(fā)明的實(shí)施例一的流程圖??紤]到現(xiàn)在的網(wǎng)站有超過20%是使用java語言開發(fā),因此如果能夠直接使用java語言對(duì)圖片進(jìn)行處理,將會(huì)極大程度地簡(jiǎn)化網(wǎng)站圖片的處理步驟,可以更方便地將此功能整合到其他的功能中去。因此,本實(shí)施例中采用純java語言實(shí)現(xiàn)。

      本實(shí)施例中,二進(jìn)制數(shù)據(jù)與rgb數(shù)據(jù)之間的轉(zhuǎn)化、rgb數(shù)據(jù)與hsb數(shù)據(jù)之間的轉(zhuǎn)化采用jdk中提供的函數(shù)執(zhí)行。二進(jìn)制數(shù)據(jù)為一維數(shù)組;rgb數(shù)據(jù)、hsb數(shù)據(jù)分別為二維數(shù)組,二維數(shù)組中的每一個(gè)值表示一個(gè)像素的rgb值或者h(yuǎn)sb值,例如a[1][1]表示圖片中第一行第一列的像素的rgb值。

      具體的,本實(shí)施例的方法包括:

      s0、接收輸入的待上色圖像文件原始的二進(jìn)制數(shù)組以及底色的rgb值;

      優(yōu)選的,可以將整個(gè)方法以java語言的一個(gè)函數(shù)實(shí)現(xiàn)。例如,該步驟可以通過調(diào)用函數(shù)實(shí)現(xiàn),待上色圖像文件原始的二進(jìn)制數(shù)組、底色的rgb值通過該函數(shù)的兩個(gè)參數(shù)傳遞。

      s1、將待上色圖像文件原始的二進(jìn)制數(shù)組轉(zhuǎn)化為第一rgb數(shù)組;此處的轉(zhuǎn)化可以通過jdk提供的函數(shù)imageio.read()函數(shù)實(shí)現(xiàn)。

      s2、將第一rgb數(shù)組轉(zhuǎn)化為第一hsb數(shù)組,將待上色的圖像文件所需要上色的底色的rgb值轉(zhuǎn)化為hsb值;此處的轉(zhuǎn)化可以通過jdk提供的color.rgbtohsb()函數(shù)實(shí)現(xiàn)。

      s3、基于第一hsb數(shù)組和底色的hsb值計(jì)算得到第二hsb數(shù)組,該步驟具體包括:

      針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的色相值,分別基于公式h2=h0計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的色相值;

      針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的飽和度值,分別基于公式s2=s0*b1計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的飽和度值;

      針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的亮度值,分別基于公式b2=b0+(1-b1)*(1-b0)計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的亮度值;

      其中,h0、s0、b0分別表示底色的色相值、飽和度值、亮度值,h1、b1分別表示第一hsb數(shù)據(jù)中的一個(gè)像素的hsb值中的色相值、亮度值,h2、s2、b2分別表示第二hsb數(shù)據(jù)中的一個(gè)像素的色相值、飽和度值、亮度值。

      可見本發(fā)明對(duì)圖片的原有底色沒有限制,不僅適用于黑白圖像的上色,還適用于其他已有底色的圖片的重新上色。

      s4、將第二hsb數(shù)組轉(zhuǎn)化為第二rgb數(shù)組;此處的轉(zhuǎn)化可以通過jdk提供的color.hsbtorgb()函數(shù)實(shí)現(xiàn)。

      s5、將第二rgb數(shù)組轉(zhuǎn)化得到待上色圖像文件上色后的二進(jìn)制數(shù)組。此處的轉(zhuǎn)化可以通過jdk提供的函數(shù)imageio.write()函數(shù)實(shí)現(xiàn)。

      s6、將上色后的二進(jìn)制數(shù)組輸出。

      可見,本實(shí)施例能夠減少美工人員投入,有效節(jié)省網(wǎng)站建設(shè)成本;可以實(shí)時(shí)收錄新圖片,并實(shí)時(shí)在線進(jìn)行圖片上色;轉(zhuǎn)換質(zhì)量一致性高,避免由于人工疏忽而導(dǎo)致錯(cuò)誤圖片。能夠與java語言開發(fā)的網(wǎng)站無縫結(jié)合,不需要增加任何其他組件。

      實(shí)施例二

      基于同一發(fā)明構(gòu)思,本發(fā)明還公開了一種圖片自動(dòng)上色系統(tǒng),用于對(duì)網(wǎng)站中的圖片進(jìn)行上色,參考圖3,是本發(fā)明的實(shí)施例二的模塊圖,本實(shí)施例的系統(tǒng)包括:

      參數(shù)接收單元100,用于接收輸入的待上色圖像文件原始的二進(jìn)制數(shù)據(jù)以及底色的rgb值。

      二進(jìn)制-rgb轉(zhuǎn)化單元200,用于將待上色圖像文件原始的二進(jìn)制數(shù)據(jù)轉(zhuǎn)化為第一rgb數(shù)據(jù);

      rgb-hsb轉(zhuǎn)化單元300,用于將第一rgb數(shù)據(jù)轉(zhuǎn)化為第一hsb數(shù)據(jù),將待上色的圖像文件所需要上色的底色的rgb值轉(zhuǎn)化為hsb值;

      上色處理單元400,用于基于第一hsb數(shù)據(jù)和底色的hsb值計(jì)算得到第二hsb數(shù)據(jù);

      hsb-rgb轉(zhuǎn)化單元500,用于將第二hsb數(shù)據(jù)轉(zhuǎn)化為第二rgb數(shù)據(jù);

      rgb-二進(jìn)制轉(zhuǎn)化單元600,用于將第二rgb數(shù)據(jù)轉(zhuǎn)化得到待上色圖像文件上色后的二進(jìn)制數(shù)據(jù)。

      結(jié)果輸出單元700,用于將上色后的二進(jìn)制數(shù)據(jù)輸出。

      其中,二進(jìn)制數(shù)據(jù)為一維數(shù)組;rgb數(shù)據(jù)、hsb數(shù)據(jù)分別為二維數(shù)組,二維數(shù)組中的每一個(gè)值表示一個(gè)像素的rgb值或者h(yuǎn)sb值,例如a[1][1]表示圖片中第一行第一列的像素的rgb值;二進(jìn)制數(shù)據(jù)與rgb數(shù)據(jù)之間的轉(zhuǎn)化、rgb數(shù)據(jù)與hsb數(shù)據(jù)之間的轉(zhuǎn)化采用jdk中提供的函數(shù)執(zhí)行。

      具體的,所述上色處理單元400包括:

      色相值計(jì)算單元410,針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的色相值,分別基于公式h2=h0計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的色相值;

      飽和度值計(jì)算單元420,針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的飽和度值,分別基于公式s2=s0*b1計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的飽和度值;

      亮度值計(jì)算單元430,針對(duì)第一hsb數(shù)據(jù)中的每個(gè)像素的hsb值中的亮度值,分別基于公式b2=b0+(1-b1)*(1-b0)計(jì)算得到作為第二hsb數(shù)據(jù)中的相應(yīng)像素的hsb值中的亮度值;

      其中,h0、s0、b0分別表示底色的色相值、飽和度值、亮度值,h1、b1分別表示第一hsb數(shù)據(jù)中的一個(gè)像素的hsb值中的色相值、亮度值,h2、s2、b2分別表示第二hsb數(shù)據(jù)中的一個(gè)像素的色相值、飽和度值、亮度值。

      綜上所述,實(shí)施本發(fā)明的圖片自動(dòng)上色方法以及系統(tǒng),具有以下有益效果:1)能夠減少美工人員投入,有效節(jié)省網(wǎng)站建設(shè)成本;2)可以實(shí)時(shí)收錄新圖片,并實(shí)時(shí)在線進(jìn)行圖片上色;3)轉(zhuǎn)換質(zhì)量一致性高,避免由于人工疏忽而導(dǎo)致錯(cuò)誤圖片;4)能夠與java語言開發(fā)的網(wǎng)站無縫結(jié)合,不需要增加任何其他組件。

      上面結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行了描述,但是本發(fā)明并不局限于上述的具體實(shí)施方式,上述的具體實(shí)施方式僅僅是示意性的,而不是限制性的,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的啟示下,在不脫離本發(fā)明宗旨和權(quán)利要求所保護(hù)的范圍情況下,還可做出很多形式,這些均屬于本發(fā)明的保護(hù)之內(nèi)。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1