新四季網

用於編碼顏色映射信息和基於顏色映射信息處理圖像的方法及裝置與流程

2023-12-02 08:21:21


本發明涉及用於編碼顏色映射信息和基於顏色映射信息處理圖像的方法及裝置,並且更具體地,涉及用於使用連續顏色映射函數來編碼顏色映射信息以及通過連續地應用顏色映射函數來處理圖像的方法和裝置。



背景技術:

本節旨在向讀者介紹本領域的各個方面,這些方面可能與以下所描述和/或要求保護的本發明的各個方面有關。相信該討論可以幫助向讀者提供背景信息以促進對本發明的各個方面的更好的理解。因此,應理解的是,這些陳述將從這個角度來閱讀,並且不被承認是現有技術。

圖像中的樣本可以從一個顏色空間轉換為另一個顏色空間,或者更一般地,從一種顏色轉換為另一顏色。例如,在可縮放視頻編碼中,通常根據(可能是上採樣的)經解碼的基本層(bl)圖像來預測增強層(el)圖像。當el圖像和bl圖像用不同的顏色空間來表示和/或已被不同地顏色分級時,將解碼bl圖像轉換為例如el的顏色空間可改善預測。

該顏色轉換還稱為顏色映射,其可以由顏色映射函數(cmf)來表示。cmf例如可以由3×3增益矩陣加上由12個參數定義的偏移(增益偏移模型)來近似。然而,cmf的這種近似可能不是非常精確,因為它假設線性變換模型。在另一示例中,可以使用3d查找表(還稱為3dlut)來描述cmf,該3dlut指示如何將顏色(通常具有三個分量)映射到查找表中的另一顏色。3dlut可能更精確,因為其尺寸可以根據所需的精度來增加。然而,3dlut可因此表示巨大的數據集。

在另一示例中,可以通過對圖像的每個顏色分量或圖像中的區域的每個顏色分量獨立地應用一維顏色lut來執行顏色轉換。由於對每個顏色分量獨立地應用1dlut會破壞分量相關性(這可能會降低層間預測的效率,從而降低編碼效率),因此可以對經映射的分量應用諸如3×3(在3個顏色分量的情況下)矩陣和(可選地)補償向量之類的線性模型,以便補償分量之間的去相關。可選地,可以通過對圖像的每個顏色分量或圖像中的區域的每個顏色分量獨立地應用另一一維顏色lut來執行另外的顏色轉換。



技術實現要素:

根據本原理的一個方面,提出了一種用於處理包括圖像的比特流的方法,包括:訪問指示第一顏色映射函數的第一組參數,第一顏色映射函數在第一域上被定義;訪問指示第二顏色映射函數的第二組參數,第二顏色映射函數在第二域上被定義;以及響應於第一顏色映射函數、第二顏色映射函數、以及圖像生成輸出圖像,其中,第一顏色映射函數和第二顏色映射函數被連續地應用到圖像。本實施例還提供了用於執行這些步驟的裝置。

本實施例還提供了一種計算機可讀存儲介質,其上存儲有用於根據上述方法來處理包括圖像的比特流的指令。

根據本原理的另一方面,提供了一種用於編碼顏色映射信息的方法,包括:訪問第一顏色映射函數和第二顏色映射函數,其中,第一顏色映射函數和第二顏色映射函數的連續應用被用於表示顏色映射信息;編碼指示第一顏色映射函數的第一組參數,第一顏色映射函數在第一域上被定義;編碼指示第二顏色映射函數的第二組參數,第二顏色映射函數在第二域上被定義;以及提供包括第一組參數和第二組參數的比特流作為輸出。本實施例還提供了用於執行這些步驟的裝置。

本實施例還提供了一種計算機可讀存儲介質,其上存儲有用於根據上述方法來編碼顏色映射信息的指令。

附圖說明

圖1示出了使用兩個1dlut和矩陣的cmf表示的圖例。

圖2示出了將顏色分量從x值映射為y值的分段線性曲線的圖例。

圖3示出了其中輸入顏色是在顏色空間的子集內的圖例。

圖4a示出了使用小間隔來表示顏色映射函數的圖例,並且圖4b示出了使用針對某些顏色的大間隔來表示顏色映射函數的另一圖例。

圖5示出了根據本原理的實施例的描繪創建和應用兩個顏色映射函數的示例性系統的框圖。

圖6是示出了根據本原理的實施例的用於編碼顏色映射信息的示例性方法的流程圖。

圖7a示出了用於第一顏色映射函數fcri1的示例性定義域(dcri1);圖7b在虛線內示出了應用第一顏色映射fcri1(dcri1)之後的範圍,並且在實線內示出了用於第二顏色映射函數fcri2的示例性定義域(dcri2);圖7c示出了根據第一規則的dcri2上的第二顏色映射的結果;以及圖7d示出了根據第二規則的dcri2上的第二顏色映射的結果。

圖8是示出了根據本原理的實施例的用於基於經解碼的顏色映射函數來處理圖像的示例性方法的流程圖。

圖9是示出了根據本原理的實施例的用於執行第一顏色映射和第二顏色映射的示例性系統的流程圖。

圖10示出了描繪在其中可以實現本原理的示例性實施例的各個方面的示例性系統的框圖。

圖11示出了描繪可以與一個或多個實現方式一起使用的視頻處理系統的示例的框圖。

圖12示出了描繪可以與一個或多個實現方式一起使用的視頻處理系統的另一示例的框圖。

具體實施方式

在本申請中還稱為「顏色映射」和「顏色重映射」的顏色轉換可用於各種應用。例如,由於顏色格式、捕獲能力、以及顯示特性的寬範圍,顏色映射可用於將經解碼的圖像呈現在顯示設備上。在另一示例中,針對不同的目的可以對視頻進行多次顏色分級,其中,顏色分級是改變/增強視頻的顏色的過程。例如,著色師(colorist)可以對電影進行顏色分級以使得以廣色域(wcg)來呈現該電影並且適於劇院,並且另一著色師可以對電影進行顏色分級以使得以較小色域來呈現該電影並且適於家庭娛樂。電影的每個經顏色分級的版本對應於藝術意圖,並且可以取決於目標顯示器或應用的能力。

發送器可以僅發送家庭娛樂版本和顏色映射信息集合,該顏色映射信息集合指示家庭娛樂版本中的顏色可以如何被映射到劇院版本。為了表示該顏色映射信息集合,可以例如使用心理視覺度量來確定顏色映射函數以便最小化映射圖像(例如,cmf(家庭娛樂版本))和目標圖像(例如,劇院版本)之間的差異。在接收器側,可以使用顏色映射信息將家庭娛樂版本映射到劇院版本。

發送器還可僅發送劇院版本和顏色映射信息集合,該顏色映射信息集合指示劇院版本中的顏色可以如何被映射到家庭娛樂版本。在接收器側,可以使用顏色映射信息將劇院版本映射到家庭娛樂版本。因此,不同於發送兩個版本,可以發送僅一個版本,並且使用顏色映射信息來恢復另一版本。該方法通常要求比發送兩個版本少得多的帶寬,而仍保留在顯示設備顯示任一版本的可能性。

更一般地,為了使得顯示設備能夠顯示任一版本,可以在比特流中通過信號傳送表示顏色映射信息的元數據。對這類顏色映射元數據進行編碼使得可以顯示內容的各種版本,並且如果顯示器能夠顯示通過顏色映射信息增強的數據,則可以增強所發送的編碼視頻。發送顏色映射信息還使得可以得體地降級廣色域分級內容,而同時保留藝術意圖。

在hevc的草案版(高效視頻編碼(hevc)草案文本第2版,jctvc-r1013,以下稱為「jctvc-r1013」)中,在顏色重映射信息(cri)中定義顏色轉換信息,如表1所示,為了便於參考在表中添加了行號。cri可以應用於hevc、hevc範圍擴展、可擴展性(shvc)和多視圖(mv-hevc)擴展。特別地,在顏色重映射信息sei消息中使用的顏色重映射模型包括:可用於構建應用於每個顏色分量的第一分段線性函數的「pre」語法元素集合、可應用於三個顏色分量的3×3矩陣、以及可用於重新構建應用於每個顏色分量的第二分段線性函數的「post」語法元素集合。

表1:如hevc的草案版中定義的cri語法

語義

colour_remap_id包含可用於標識顏色映射信息的目的的標識號。colour_remap_id的值應在0到232-2的範圍內,包括0和232-2。從0到255和從512到231-1的colour_remap_id值可用於由應用確定。從256到511(包括256和511)和從231到232-2(包括231和232-2)的colour_remap_id值被預留以供由itu-t|iso/iec將來使用。解碼器應忽略包含256到511(包括256和511)或231到232-2(包括231和232-2)範圍內的colour_remap_id值的所有顏色重映射信息sei消息,並且比特流不應包含這些值。

colour_remap_cancel_flag等於1指示顏色重映射信息sei消息在應用於當前層的輸出順序中取消任意此前的顏色重映射信息sei消息的存留。colour_remap_cancel_flag等於0指示顏色重映射信息跟隨。

colour_remap_persistence_flag指定針對當前層存留顏色重映射信息sei消息。colour_remap_persistence_flag等於0指定顏色重映射信息僅應用於當前圖片。

colour_remap_video_signal_info_present_flag等於1指定語法元素colour_remap_full_range_flag、colour_remap_primaries、colour_remap_transfer_function、以及colour_remap_matrix_coefficients都存在,colour_remap_video_signal_info_present_flag等於0指定語法元素colour_remap_full_range_flag、colour_remap_primaries、colour_remap_transfer_function、以及colour_remap_matrix_coefficients都不存在。

colour_remap_full_range_flag具有與針對video_full_range_flag語法元素的jctvc-r1013的條款e.3.1所指定的相同的語義,除了colour_remap_full_range_flag指定經重映射的重構圖像的顏色空間,而不是用於clvs(編碼分層視頻序列)的顏色空間。當不存在時,推斷colour_remap_full_range_flag的值等於video_full_range_flag的值。

colour_remap_primaries具有與針對colour_primaries語法元素的jctvc-r1013的條款e.3.1所指定的相同的語義,除了colour_remap_primaries指定示經重映射的重構圖像的顏色空間,而不是用於clvs的顏色空間。當不存在時,推斷colour_remap_primaries的值等於colour_primaries的值。

colour_remap_transfer_function具有與針對transfer_characteristics語法元素的jctvc-r1013的條款e.3.1所指定的相同的語義,除了colour_remap_transfer_function指定經重映射的重構圖像的顏色空間,而不是用於clvs的顏色空間。當不存在時,推斷colour_remap_transfer_function的值等於transfer_characteristics的值。

colour_remap_matrix_coefficients具有與針對matrix_coeffs語法元素的jctvc-r1013的條款e.3.1所指定的相同的語義,除了colour_remap_matrix_coefficients指定經重映射的重構圖像的顏色空間,而不是用於clvs的顏色空間。當不存在時,推斷colour_remap_matrix_coefficients的值等於matrix_coeffs的值。

colour_remap_input_bit_depth為了解釋顏色重映射信息sei消息的目的指定相關聯的圖像的亮度和色度分量或rgb分量的位深度。當任意顏色重映射信息sei消息具有不等於經編碼的亮度和色度分量的位深度或經編碼的rgb分量的位深度的colour_remap_input_bit_depth值時,sei消息指被執行以將編碼視頻轉換為具有等於colour_remap_input_bit_depth值的位深度的轉換視頻的轉碼操作的假設結果。colour_remap_input_bit_depth的值應在8到16的範圍內,包括8和16。從0到7(包括0和7)和從17到255(包括17和255)的colour_remap_input_bit_depth值被預留以供由itu-t|iso/iec將來使用。解碼器應忽略包含0到7(包括0和7)或17到255(包括17和255)範圍內的colour_remap_input_bit_depth的所有顏色重映射sei消息,並且比特流不應包含這些值。

colour_remap_bit_depth指定顏色重映射信息sei消息所描述的顏色重映射函數的輸出的位深度。colour_remap_bit_depth的值應在8到16的範圍內,包括8和16。從0到7(包括0和7)和17到255(包括17和255)範圍內的colour_remap_bit_depth值被預留以供由itu-t|iso/iec將來使用。解碼器應忽略包含從0到7(包括0和7)或17到255(包括17和255)範圍內的colour_remap_bit_depth值的所有顏色重映射sei消息。

pre_lut_num_val_minus1[c]加1指定用於第c個分量的分段線性重映射函數中的樞軸點的數目,其中,c等於0指亮度或g分量,c等於1指cb或b分量,以及c等於2指cr或r分量。對於第c個分量,當pre_lut_num_val_minus1[c]等於0時,輸入值的默認端點是0和2colour_remap_input_bit_depth-1,並且輸出值的相應的默認端點是0和2colour_remap_input_bit_depth-1。在符合本說明書的版本的比特流中,pre_lut_num_val_minus1[c]的值應在0到32的範圍內,包括0和32。

pre_lut_coded_value[c][i]指定用於第c個分量的第i個樞軸點的值。用於表示pre_lut_coded_value[c][i]的位的數目是((colour_remap_input_bit_depth+7)>>3)<<3。

pre_lut_target_value[c][i]指定用於第c個分量的第i個樞軸點的值。用於表示pre_lut_target_value[c][i]的位的數目是((colour_remap_bit_depth+7)>>3)<<3。

colour_remap_matrix_present_flag等於1指示語法元素log2_matrix_denom和colour_remap_coeffs[c][i](c和i在0到2的範圍內,包括0和2)存在。colour_remap_matrix_present_flag等於0指示語法元素log2_matrix_denom和colour_remap_coeffs[c][i](c和i在0到2的範圍內,包括0和2)不存在。

log2_matrix_denom為所有矩陣係數指定基數2對數的分母。log2_matrix_denom的值應在0到15的範圍內,包括0和15。當不存在時,推斷log2_matrix_denom的值等於0。

colour_remap_coeffs[c][i]指定3×3顏色重映射矩陣係數的值。colourr_emap_coeffs[c][i]的值應在-215到215-1的範圍內,包括-215和215-1。當colour_remap_coeffs[c][i]不存在時,若c等於i則推斷其等於1,否則推斷其等於0。

如下導出針對c=0、1、以及2的變量matrixoutput[c]:

roundingoffset=log2_matrix_denom==0?0∶1<<(log2_matrix-denom-1)

matrixoutput[c]=clip3(0,(1<<colour_remap_bit_depth)-1,

(colour_remap_coeffs[c][0]*matrixinput[0]+colour_remap_coeffs[c][1]*matrixinput[1]

+colour_remap_coeffs[c][2]*matrixinput[2]+roundingoffset)>>log2_matrix_denom)

其中,matrixinput[c]是第c個顏色分量的輸入樣本值,並且matrixoutput[c]是第c個顏色分量的輸出樣本值。

post_lut_num_val_minus1[c]具有與pre_lut_num_val_minus1[c]相同的語義,用post代替pre,除了對於第c個顏色分量,輸入值的默認端點是0和2colour_remap_bit_depth-1。post_lut_num_val_minus1[c]的值應在0到32的範圍內,包括0和32。

post_lut_coded_value[c][i]具有與pre_lut_coded_value[c][i]相同的語義,用post代替pre,除了用於表示post_lut_coded_value[c][i]的位的數目是((colour_remap_bit_depth+7)>>3)<<3。

post_lut_target_value[c][i]具有與pre_lut_target_value[c][i]相同的語義,用post代替pre。

圖1示出了使用兩個1dlut和矩陣的示例性cmf表示,其中,輸入顏色分量e1j(j∈{1,...,c})可被轉換為輸出顏色分量e2j(j∈{1,...,c}),其中,c是圖像的顏色分量的數目並且通常c=3。顏色映射函數cmf包括:由c個一維分段線性函數f1j(j∈{1,...,c})近似的變換f1、由c個一維分段線性函數f2j(j∈{1,...,c})近似的第二變換f21、以及可被視為另一顏色轉換f22的線性矩陣m。

參考回表1,可以使用語法元素pre_lut_num_val_minusl、pre_lut_coded_value、以及pre_lut_target_value(表1中的第14-21行)來表示第一1dlutf1,可以使用語法元素log2_matrix_denom和colour_remap_coeffs(表1中的第22-28行)來表示矩陣m,並且可以使用語法元素post_lut_num_val_minus1、post_lut_coded_value、以及post_lut_target_value(表1中的第29-36行)來表示第二1dlutf21。

hevc標準定義了用於cmf的參數,但未指定重新構建cmf的方法。圖2示出了基於第一1dlut(「pre」語法元素集合)的可以利用樞軸點來構建的將顏色分量從x值映射到y值的分段線性曲線。每個樞軸點(例如,點201、202、或203)對應於一對語法元素(pre_lut_coded_value[c][i]、pre_lut_target_value[c][i]),並且使用線性插值來映射兩個樞軸點之間的值。在圖2中,「th_c1_min」是顏色分量c1的最小輸入值,並且「th_c1_max」是顏色分量c1的最大輸入值。「th_c1_min」和「th_c1_max」的值可對應於視頻的顏色空間中的顏色分量的範圍,例如,對於8位rgb視頻的r分量,th_c1_min=0並且th_c1_max=255,或者「th_c1_min」和「th_c1_max」還可對應於顏色空間的子集,例如,th_c1_min=17並且th_c1_max=220。

如圖2所示,最左邊的樞軸點可能不在th_c1_min並且最右邊的樞軸點可能不在th_c1_max,也就是說,可以在輸入值的子集上定義分段線性曲線。在其上定義分段線性曲線的值被稱為分段線性函數的定義域或域。

更一般地,可以在整個顏色空間或顏色空間的子集中定義顏色映射。圖3示出了輸入顏色在顏色空間的子集中的情況,其中,每個軸表示在其中表示視頻信號的顏色空間的顏色分量。顏色空間具有三個顏色分量c1、c2、以及c3,例如,分別為r,g、以及b。在最大立方體(外立方體)[0,th_c1_max]×[0,th_c2_max]×[0,th_c3_max]中定義輸入顏色。在圖3的示例中,在其子集(陰影區域[th_c1_min,th_c1_max]×[th_c2_min,th_c2_max]×[th_c3_min,th_c3_max])中定義cmf,即顏色映射函數的域是顏色空間的子集([0,th_c1_max]×[0,th_c2_max]×[0,th_c3_max])。

當使用不同的方法(例如,使用1dlut和3×3矩陣)來表示顏色映射函數時,可能會降低顏色映射的精度。例如,圖4a示出了使用分段線性曲線來使用相等間隔表示顏色映射函數的1d簡化示例,並且圖4b示出了使用不同間隔的另一示例,其中,虛線對應於要被表示的顏色映射函數(表示為「原始cmf」)並且實線對應於用於表示/近似原始cmf的分段線性曲線。根據圖4a,我們觀察到分段線性曲線與原始cmf略有不同。然而,如圖4b所示,隨著一些輸入顏色中的間隔變大,分段線性曲線和原始cmf之間的差異變大,這可能導致歸因於應用近似的cmf的顏色不準確,例如,色調偏移或飽和,這在使用原始cmf的情況下可能不會發生。

使用hevccri信令作為示例,「pre」語法元素集合和「post」語法元素集合中的每項在1dlut中可支持多達33個樞軸點(pre_lut_num_val_minus1[c]和post_lut_num_val_minusl[c]在0到32的範圍內)。為了表示顏色映射函數以使得映射圖像具有良好的質量(例如,映射圖像接近目標圖像),樞軸點的選擇通常應考慮可用的樞軸點的數目的約束和映射圖像的質量。例如,諸如人眼更敏感的顏色或具有較大統計重要性的顏色之類的關鍵顏色通常應得到更精細的表示。通常,對於關鍵顏色,在樞軸點之間應具有較小的間隔以便提供更精確的表示。

然而,考慮統計和考慮人類視覺來選擇樞軸點可能彼此衝突。例如,我們考慮包括對應於95%的b分量的藍天(b分量的值在10-63的範圍內)和對應於1%的b分量的藍色自行車(b分量的值約為56)的圖像。基於統計的分段線性曲線可能選擇具有值10-41的32個樞軸點(10-41的每個值一個樞軸點)和值63的另一樞軸點,以使得大部分採樣得到良好的表示。為映射藍色自行車,插入大約56個顏色映射,這可能與預期的映射相當。由於藍色自行車處於前景,自行車中的藍色失真可能會非常顯著,並且影響感知的視覺質量。

在另一示例中,我們考慮其中有紅色嘴唇、紅色指甲、以及許多紅色衣服的圖像,其中,紅色衣服對應於r分量中大部分樣本,而紅色嘴唇和紅色指甲對應於少量樣本。類似於此前的示例,基於統計選擇的樞軸點使得紅色嘴唇/指甲的顏色呈褐色,這於對人眼變得討厭。

除了可用於表示顏色映射函數的參數的數目之外,硬體實現成本可能會施加另一約束。我們觀察到域中的均勻樞軸點間隔(即兩個相鄰樞軸點之間的所有間隔具有相同的距離)是優選的硬體實現方式。因此,還期望在設計表示顏色映射函數的參數時考慮均勻間隔。例如,當10位視頻的域是[0,1023]時,樞軸點位於0、31、62、...、31×i、...、1023。然而,該均勻表示未針對更關鍵的顏色提供更精細的表示,例如,對應於圖像中的膚色的顏色(例如,31-62的b分量)未得到非常好地映射。

本原理涉及用於使用多個顏色映射函數來改善顏色映射信息的表示的方法和裝置。特別地,我們提出了可以提供關鍵顏色的更精細表示同時還尊重硬體實現方式考慮的不同的解決方案。顏色映射函數的這種表示可以通過重新使用現有的語法元素來實現。在解碼器側,顏色映射函數可以被解碼並然後應用於處理解碼圖像。在下文中,我們使用兩個連續的顏色映射函數來討論不同的實施例。還可在使用更多輪的顏色映射時應用本原理。

在一個實施例中,可以基於例如從兩個不同的顏色分級獲取的顏色映射信息來生成第一顏色映射函數。然後,使用第一顏色映射函數來第一映射輸入圖像以形成remap1,例如,具有r分量的定義域[0,1023]中的均勻間隔處的樞軸點的remap1。重映射圖像(remap1)可能具有顏色偽影,因為一些關鍵顏色未被精確地映射。因此,可以例如由操作員通過用戶界面來手動選擇一組樣本,以供進一步的調整。cmf創建器針對所選樣本生成第二顏色映射函數(在不同的定義域中,例如,31-62的r分量)。對應於所選樣本的輸入圖像中的樣本然後經過第二顏色映射以提升質量。然後,組合對應於所選樣本的來自第二cmf的映射結果remap2和對應於剩餘樣本的來自映射結果remap1的樣本以形成輸出圖像。

在另一實施例中,如圖5所示,在應用第一顏色映射函數(520)並且形成映射圖像(remap1)之後,操作員可以選擇(530)具有偽影並且需要進一步調整的樣本。然後cmf創建器生成(510)用於所選樣本的第二顏色映射函數。對來自重映射圖像(remap1)的樣本而非來自輸入圖像的樣本應用(540)第二顏色映射。然後可以基於兩次顏色映射來生成(550)輸出圖像。

圖6示出了根據本原理的用於對顏色映射信息進行編碼的示例性方法600。方法600在步驟605處開始。在步驟610處,方法600訪問輸入圖像,例如,wcghdr(高動態範圍)圖像。這裡,輸入圖像還可以從一個顏色空間被轉換為另一顏色空間,例如,從yuv被轉換為rgb。在步驟620處,方法600例如基於來自兩個顏色分級的顏色映射信息來確定第一顏色映射函數。通常,對於要在解碼器側重新構建的顏色映射函數,顏色映射函數應符合比特流所需求的格式,例如,hevccri語法元素所指定的格式。在步驟630處,方法600應用第一顏色映射,例如,它將輸入圖像轉換為映射圖像(remapl)。

在步驟640處,方法600例如基於被選擇以進一步調整的樣本來確定第二顏色映射函數。在步驟650處,方法600對映射圖像(remapl)應用第二顏色映射,例如,它將remap1轉換為sdr(標準動態範圍)圖像。在步驟660處,方法600將第一顏色映射函數和第二顏色映射函數和輸入圖像編碼為比特流。在步驟670處,方法600輸出比特流。方法600在步驟699處結束。

因此,根據本實施例,可以連續地應用顏色映射函數並且可以編碼多個顏色映射函數。相應地,可以連續地應用顏色映射函數以在解碼器側處理圖像。當應用連續顏色映射時,可以定義例如關於如何應用第二顏色映射函數的不同規則。將使用哪個規則可以在比特流中通過信號被發送,或者在編碼器和解碼器二者處是已知的。在下文中,我們更詳細地討論用於連續顏色映射的兩個不同規則。

為了便於表示,我們將第一顏色映射表示為cri1並且將在第一域dcri1上定義的第一顏色映射函數表示為fcri1,以及我們將第二顏色映射表示為cri2並且將在第二域dcri2上定義的第二顏色映射函數表示為fcri2。dcri1和dcri2都可對應於整個可能的輸入顏色或其子集。通常,dcri1和dcri2是不同的,例如,dcri2可以是dcri1的子集、dcri1和dcri2可以重疊、或dcri1和dcri2可以不重疊。函數fcri1或fcri2可以是任意顏色映射函數,例如,我們上面討論的那些顏色映射函數。在顏色映射函數的定義域之外,標識函數可用於顏色映射(即輸入顏色在映射之後不變)。

規則1

在一個實施例中,兩個顏色映射函數僅被連續地應用於它們自己的定義域。圖7a示出了用於第一顏色映射函數fcri1的示例性定義域。輸入圖像的可能的顏色值現在被劃分為dcri1和圖7b在虛線內示出了應用第一顏色映射fcri1(dcri1)之後的範圍。對應於的樣本不變。在數學上,cri1之後的輸出可被寫作來自dcri1和二者的映射結果的組合:

第二顏色映射函數的域是dcri2,其在圖7b的實線內被示出。remap1被劃分為dcri2和remap1\dcri2。在圖7b中,為了簡單,我們假設覆蓋dcri2,因此remap1覆蓋dcri2,即remap1∩dcri2=dcri2。圖7c示出了dcri2上的第二顏色映射(即fcri2(dcri2))的結果。對應於remap1\dcri2中的顏色的樣本不變。在數學上,輸出可被寫作來自dcri2和remap1\dcri2的映射結果的組合:

remap2=fcri2(dcri2)∪(remap1\dcri2).(2)

當remap1不包括整個dcri2時,第二顏色映射fcri2被嚴格地應用於(remap1∩dcri2),因此,第二顏色映射還可被寫作:

remap2=fcri2(remap1∩dcri2)∪(remap1\dcri2).(3)

規則2

在另一實施例中,第一顏色映射cri1被應用於其定義域,但第二顏色映射cri2僅被應用於此前已被cri1顏色映射過並且也在函數fcri2的定義域內的樣本。

與此前的規則相同,cri1之後的輸出可被寫作來自dcri1和二者的映射結果的組合:

第二顏色映射函數的域是dcri2,其在圖7b的實線內被示出。為了簡單,我們還假設remap1覆蓋dcri2,因此remap1覆蓋dcri2,即remap1∩dcri2=dcri2。然而,與此前的規則不同,cri2僅被應用於此前已被cri1顏色映射過(即對應於remap1中的fcri1(dcri1)的樣本)並且也在函數fcri1(dcri2)的定義域內的樣本。圖7d示出了針對此前已被cri1顏色映射過的樣本的dcri2上的第二顏色映射(即fcri2(fcri1(dri1)∩dcri2))的結果。對應於剩餘顏色的樣本(即)未被fcri2改變。也就是說:

上面討論了用於連續地應用顏色轉換的兩個不同的規則。可以更容易的實現規則1,但會影響(操作員可能已經滿足的)非映射樣本並且可能導致新的問題。規則2僅影響映射樣本,因此操作員具有精確的控制,但它需要標識哪些樣本被選擇,因此更難實現。基於用戶要求或其他輸入,編碼器可以選擇一個規則而非另一規則。

在上文中,我們主要討論了在顏色空間的子集中應用顏色映射。本原理還可應用於圖像的空間區域。例如,顏色映射可以僅應用於圖像內的空間窗口。為了指示哪個空間區域被顏色映射,可以使用額外的語法元素(xmin,ymin)和(xmax,ymax)來分別指示空間窗口的左上角和右下角像素坐標。或者可以使用額外的語法元素(xmin,ymin)和(xsize,ysize)來分別指示左上角像素坐標和窗口大小(空間窗口的像素的數目)。

可以在比特流中通過信號發送與不同的顏色映射函數相關的參數。在一個實施例中,若干hevccri集合按照它們被應用的順序在它應用的(一個或多個)視頻編碼圖像(cri應用於crisei所屬的同一層(例如,具有相同的layer_id)的重構圖像)之前被編碼在比特流中。在另一實施例中,從諸如colour_remap_id之類的另一語法元素導出cri應用順序。本原理還可應用於定義用於顏色映射函數的參數的其他視頻壓縮標準。

圖8示出了根據本原理的用於在接收器側基於經解碼的顏色映射信息來處理圖像的示例性方法800。方法800在步驟805處開始。在步驟810處,方法800例如通過解碼來自比特流的wcghdr圖像來接收wcghdr圖像作為輸入。在步驟820處,方法800根據比特流和兩個顏色映射函數的應用順序來確定用於兩個顏色映射函數的參數,例如,基於「pre」和「post」hevccri語法元素集合和3×3矩陣來重新構建分段線性曲線。在步驟830處,方法800執行連續顏色映射,例如,它首先使用第一顏色映射函數將wcghdr圖像轉換為映射圖像,然後使用第二顏色轉換函數將映射圖像轉換為sdr圖像。如果在與輸入圖像的顏色空間不同的顏色空間中執行顏色映射,則映射圖像應被轉換到用於顏色映射的顏色空間中。在步驟840處,方法800輸出sdr圖像。方法800在步驟899處結束。

圖9示出了根據本原理的用於執行第一映射和第二映射的示例性方法900,其可用於實現方法800中的步驟830。當在作為所有可能的顏色的子集的定義域上定義第一顏色映射函數時,方法900選擇(910)落入第一顏色映射函數的域內的樣本。然後,第一映射函數被應用(920)於所選的樣本,並且其他樣本不變。在應用第一映射函數之後,形成映射圖像(remap1)。

當在作為所有可能的顏色的子集的定義域上定義第二顏色映射函數時,方法900從映射圖像(remap1)選擇(930)落入第二顏色映射函數的域內的樣本。當使用如公式(5)所描述的第二規則時,樣本僅當它們此前在第一映射中被映射時被選擇。第二映射函數被應用(940)於remap1中的所選的樣本,並且其他樣本不變。

在上文中,我們使用wcghdr和sdr圖像來說明顏色映射。本原理還可應用於圖像的其他格式之間的顏色映射。

有利地,本實施例可以使用若干顏色映射函數以便捕獲圖像中的局部變化。它可以與局部空間窗口相結合以允許僅對局部空間窗口內部的樣本應用映射。連續應用不同的顏色映射還允許在不開發更複雜的顏色映射函數的情況下,利用連續顏色映射來修正/改善第一顏色映射,並從而降低實現成本。

圖10示出了在其中可以實現本原理的示例性實施例的各個方面的示例性系統的框圖。系統1000可被體現為包括下述各種組件並且被配置為執行上述處理的設備。這類設備的示例包括但不限於:個人計算機、膝上型計算機、智慧型電話、平板計算機、數字多媒體機頂盒、數位電視接收器、個人視頻記錄系統、連接的家用電器、以及伺服器。系統1000可以通信地耦合到其他類似的系統,並且經由如圖10所示的通信信道來顯示,並且如本領域技術人員已知的,可以實現上述示例性視頻系統。

系統1000可包括至少一個處理器1010,其被配置為執行加載在其中用於實現如上討論的各種處理的指令。處理器1010可包括嵌入式存儲器、輸入輸出接口、以及本領域已知的各種其它電路。系統1000還可包括至少一個存儲器1020(例如,易失性存儲器設備、非易失性存儲器設備)。系統1000還可包括存儲設備1040,其可包括非易失性存儲器,包括但不限於:eeprom、rom、prom、ram、dram、sram、快閃記憶體、磁碟驅動器、和/或光碟驅動器。作為非限制性示例,存儲設備1040可包括內部存儲設備、附接的存儲設備、和/或網絡可訪問存儲設備。系統1000還可包括編碼器/解碼器模塊1030,其被配置為處理數據以提供編碼視頻或解碼視頻。

編碼器/解碼器模塊1030表示可被包括在設備中以執行編碼和/或解碼功能的(一個或多個)模塊。眾所周知,設備可包括編碼和解碼模塊中的一者或二者。此外,編碼器/解碼器模塊1030可被實現為系統1000的單獨的元件,或者如本領域技術人員已知的,可以作為硬體和軟體的組合被合併到處理器1010內。

要被加載到處理器1010上以執行上述各種處理的程序代碼可被存儲在存儲設備1040中,並隨後被加載到存儲器1020上以供由處理器1010執行。根據本原理的示例性實施例,(一個或多個)處理器1010、存儲器1020、存儲設備1040、以及編碼器/解碼器模塊1030中的一項或多項可以在執行上述處理期間存儲各種項中的一項或多項,包括但不限於:調製值、sdr視頻、hdr視頻、方程、公式、矩陣、變量、操作、以及操作邏輯。

系統1000還可包括能夠經由通信信道1060與其他設備進行通信的通信接口1050。通信接口1050可包括但不限於被配置為發送和接收來自通信信道1060的數據的收發器。通信接口可包括但不限於數據機或網卡,並且可以在有線和/或無線介質內實現通信信道。系統1000的各個組件可以使用各種適當的連接(包括但不限於:內部總線、線路、以及印刷電路板)來連接或通信地耦合在一起。

可以通過處理器1010所實現的計算機軟體、或通過硬體、或通過硬體和軟體的組合來實現根據本原理的示例性實施例。作為非限制性示例,可以通過一個或多個集成電路來實現根據本原理的示例性實施例。存儲器1020可以是適於技術環境的任意類型並且可以使用任意適當的數據存儲技術來顯示,作為非限制性示例,例如,光存儲器設備、磁存儲器設備、基於半導體的存儲設備、固定存儲器和可移除存儲器。處理器1010可以是適於技術環境的任意類型,並且作為非限制性示例,可包括下列項中的一項或多項:微處理器、通用計算機、專用計算機、以及基於多核架構的處理器。

參考圖11,示出了可以應用上述特徵和原理的數據傳輸系統1100。數據傳輸系統1100可以是例如用於使用各種介質(例如,衛星、線纜、電話線、或地面廣播)中的任意介質來發送信號的頭端或傳輸系統。數據傳輸系統1100還可用於提供用於存儲裝置的信號。可以通過網際網路或一些其他網絡來提供傳輸。數據傳輸系統1100能夠生成並傳遞例如視頻內容和其他內容。

數據傳輸系統1100從處理器1101接收經處理的數據和其他信息。在一個實現方式中,處理器1101基於同一視頻的兩個顏色分級來生成顏色映射信息,並且例如使用方法500來使用兩個顏色映射函數表示顏色信息。處理器1101還可以向1100提供元數據,其指示例如關於如何應用第二顏色映射函數的規則。

數據傳輸系統或裝置1100包括編碼器1102和能夠發送編碼信號的發送器1104。編碼器1102從處理器1101接收數據信息。編碼器1102生成(一個或多個)編碼信號。

編碼器1102可包括子模塊,其包括例如用於接收各種信息片段並且將各種信息片段組裝成用於存儲或傳輸的結構化格式的組裝單元。各種信息片段可包括例如編碼或未編碼的視頻、以及編碼或未編碼的元素。在一些實現方式中,編碼器1102包括處理器1101從而執行處理器1101的操作。

發送器1104從編碼器1102接收(一個或多個)編碼信號,並將(一個或多個)編碼信號發送到一個或多個輸出信號中。發送器1104例如可適於發送具有一個或多個比特流的程序信號,該一個或多個比特流表示與其相關的編碼圖像和/或信息。典型的發送器執行諸如下列項中的一個或多項之類的功能:提供糾錯編碼、交織信號中的數據、隨機化信號中的能量、以及使用調製器1106將信號調製到一個或多個載波上。發送器1104可包括天線(未示出)或與天線(未示出)相接口。此外,發送器1104的實現方式可被限制為調製器1106。

數據傳輸系統1100還通信地耦合到存儲單元1108。在一個實現方式中,存儲單元1108被耦合到編碼器1102,並且存儲來自編碼器1102的編碼比特流。在另一實現方式中,存儲單元1108被耦合到發送器1104,並且存儲來自發送器1104的比特流。來自發送器1104的比特流可包括例如已經由發送器1104進一步處理的一個或多個編碼比特流。在不同的實現方式中,存儲單元1108是下列項中的一項或多項:標準dvd、藍光碟、硬碟驅動器、或一些其他存儲設備。

參考圖12,示出了可以應用上述特徵和原理的數據接收系統1200。數據接收系統1200可被配置為通過各種介質(例如,存儲設備、衛星、線纜、電話線、或地面廣播)來接收信號。可以通過網際網路或一些其他網絡接收信號。

數據接收系統1200可以是例如手機、計算機、機頂盒、電視機、或接收編碼視頻並且提供例如用於顯示(例如,顯示給用戶)、處理、或存儲的解碼視頻信號的其他設備。因此,數據接收系統1200可以將其輸出提供給例如電視屏幕、計算機監視器、計算機(用於存儲、處理、或顯示)、或一些其他存儲、處理、或顯示設備。

數據接收系統1200能夠接收和處理數據信息。數據接收系統或裝置1200包括用於接收編碼信號(例如,本申請的實現發送中所描述的信號)的接收器1202。接收器1202可以接收例如提供wcghdr視頻和顏色映射函數中的一項或多項的信號、或從圖11的數據傳輸系統1100輸出的信號。

接收器1202可以例如適於接收具有表示編碼圖像的多個比特流的程序信號。典型的接收器執行諸如下列項中的一項或多項之類的功能:接收調製和編碼數據信號、使用解調器1204解調來自一個或多個載波的數據信號、對信號中的能量進行去隨機化、對信號中的數據進行解交織、以及對信號進行糾錯解碼。接收器1202可包括天線(未示出)或與天線(未示出)相接口。接收器1202的實現方式可被限制為解調器1204。

數據接收系統1200包括解碼器1206。接收器1202將接收到的信號提供給解碼器1206。由接收器1202提供給解碼器1206的信號可包括一個或多個編碼比特流。解碼器1206輸出解碼信號,例如,包括視頻信息的解碼視頻信號。

數據接收系統或裝置1200還通信地耦合到存儲單元1207。在一個實現方式中,存儲單元1207被耦合到接收器1202,並且接收器1202訪問來自存儲單元1207的比特流。在另一實現方式中,存儲單元1207被耦合到解碼器1206,並且解碼器1206訪問來自存儲單元1207的比特流。在不同的實現方式中,從存儲單元1207訪問的比特流包括一個或多個編碼比特流。在不同的實現方式中,存儲單元1207是下列項中的一項或多項:標準dvd、藍光碟、硬碟驅動器、或一些其他存儲設備。

在一個實現方式中,來自解碼器1206的輸出數據被提供給處理器1208。在一個實現方式中,處理器1208是被配置用於基於顏色映射信息你來執行hdr到sdr映射的處理器。在一些實現方式中,解碼器1206包括處理器1208,從而執行處理器1208的操作。在其他實現方式中,處理器1208是諸如機頂盒或電視機之類的下遊設備的一部分。

本文描述的實現方式可以在例如方法或過程、裝置、軟體程序、數據流、或信號中實現。即使僅在單一形式的實現方式的上下文中討論(例如,僅作為方法來討論),所討論的特徵的實現方式可以以其他形式(例如,裝置或程序)來實現。可以在例如適當的硬體、軟體、以及固件中實現裝置。可以在例如諸如處理器之類的裝置中實現方法,處理器是指通常包括例如計算機、微處理器、集成電路、或可編程邏輯器件的處理設備。處理器還包括通信設備,例如,計算機、蜂窩電話、可攜式/個人數字助理(「pda」)、以及促進終端用戶之間的信息傳送的其他設備。

本原理對「一個實施例」或「實施例」或「一個實現方式」或「實現方式」及其其他變化的引用,表示結合實施例所描述的特定特徵、結構、特性等被包括在本原理的至少一個實施例中。因此,在本說明書通篇的各個位置出現的短語「在一個實施例中」或「在實施例中」或「在一個實現方式中」或「在實現方式中」及其其他變化,不一定都指代同一實施例。

此外,本申請或其權利要求可能涉及「確定」各種信息片段。確定信息可包括下列項中的一些或多項:例如,估計信息、計算信息、預測信息、或從存儲器取回信息。

此外,本申請或其權利要求可能涉及「訪問」各種信息片段。訪問信息可包括下列項中的一些或多項:例如,接收信息、取回信息(例如,從存儲器)、存儲信息、處理信息、發送信息、移動信息、複製信息,擦除信息、計算信息、確定信息、預測信息、或估計信息。

此外,本申請或其權利要求可能涉及「接收」各種信息片段。與「訪問」一樣,接收旨在是廣義的術語。接收信息可包括例如訪問信息、或取回信息(例如,從存儲器)中的一些或多項。此外,在諸如下列項之類的操作期間通常以一種方式或另一方式涉及「接收」:例如,存儲信息、處理信息、發送信息、移動信息、複製信息、擦除信息、計算信息、確定信息、預測信息、或估計信息。

如對於本領域技術人員將明顯的,實現方式可以產生各種信號,這些信號被調整格式以運載可以例如被存儲或被發送的信息。信息可包括例如用於執行方法的指令、或所描述的實現方式中的一個實現方式所產生的數據。例如,信號可以被調整格式以運載所描述的實施例的比特流。這樣的信號可以被調製格式為例如電磁波(例如,使用頻譜的射頻部分)或基帶信號。調整格式可包括例如對數據流進行編碼和調製具有編碼數據流的載波。信號運載的信息可以是例如模擬信息或數字信息。可以通過如已知的各種不同的有線或無線鏈路來發送信號。信號可被存儲在處理器可讀介質上。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀