(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024015724
(43)【公開日】2024-02-06
(54)【発明の名称】画像処理装置およびプログラム
(51)【国際特許分類】
G06T 5/92 20240101AFI20240130BHJP
【FI】
G06T5/00 740
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2022117989
(22)【出願日】2022-07-25
(71)【出願人】
【識別番号】000250502
【氏名又は名称】理想科学工業株式会社
(74)【代理人】
【識別番号】100128451
【弁理士】
【氏名又は名称】安田 隆一
(72)【発明者】
【氏名】中村 淳
【テーマコード(参考)】
5B057
【Fターム(参考)】
5B057CA01
5B057CA08
5B057CA12
5B057CA16
5B057CB01
5B057CB08
5B057CB12
5B057CB16
5B057CE04
5B057CE06
5B057CE11
5B057DA16
5B057DB02
5B057DB06
5B057DB09
5B057DC19
(57)【要約】
【課題】階調変換によるトーンジャンプの発生を抑制することができ、かつ元の画像のシャープネスを維持することができる画像処理装置およびプログラムを提供する。
【解決手段】n(nは自然数)ビットの低ビット深度画像を受け付け、その低ビット深度画像に基づいて、ビット深度をn+α(αは自然数)ビットに上げた高ビット深度画像を生成するビット深度変更部10と、高ビット深度画像に対してぼかし処理を施してぼかし画像を生成するぼかし画像生成部11と、高ビット深度画像の各画素値とぼかし画像の各画素値との差と、予め設定された閾値とを比較し、その比較結果に基づいて、中間ぼかし画像を生成する中間ぼかし画像生成部12とを備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
n(nは自然数)ビットの低ビット深度画像を受け付け、該低ビット深度画像に基づいて、ビット深度をn+α(αは自然数)ビットに上げた高ビット深度画像を生成するビット深度変更部と、
前記高ビット深度画像に対してぼかし処理を施してぼかし画像を生成するぼかし画像生成部と、
前記高ビット深度画像の各画素値と前記ぼかし画像の各画素値との差と、予め設定された閾値とを比較し、該比較結果に基づいて、中間ぼかし画像を生成する中間ぼかし画像生成部とを備えた画像処理装置。
【請求項2】
前記中間ぼかし画像生成部が、下式に基づいて、前記中間ぼかし画像の各画素値cを求める請求項1記載の画像処理装置。
ただし、aは、前記画素値cと同じ画素位置の前記高ビット深度画像の画素値であり、bは、前記画素値cと同じ画素位置の前記ぼかし画像の画素値であり、Δは、前記閾値であり、正の定数である。
【請求項3】
前記中間ぼかし画像生成部が、下式に基づいて、前記中間ぼかし画像の各画素値cを求める請求項1記載の画像処理装置。
ただし、aは、前記画素値cと同じ画素位置の前記高ビット深度画像の画素値であり、bは、前記画素値cと同じ画素位置の前記ぼかし画像の画素値であり、Δは、前記閾値であり、正の定数である。
【請求項4】
前記中間ぼかし画像生成部が、前記高ビット深度画像に対して、下式に基づいて各画素値mが求められるレイヤマスクと前記ぼかし画像を重ねることによって、前記中間ぼかし画像を生成する請求項1記載の画像処理装置。
ただし、aは、前記画素値cと同じ画素位置の前記高ビット深度画像の画素値であり、bは、前記画素値cと同じ画素位置の前記ぼかし画像の画素値であり、Δは、前記閾値であって、正の定数である。
【請求項5】
nビットの低ビット深度画像を受け付けるステップと、
該受け付けた低ビット深度画像に基づいて、ビット深度をn+αビットに上げた高ビット深度画像を生成するステップと、
前記高ビット深度画像に対してぼかし処理を施してぼかし画像を生成するステップと、
前記高ビット深度画像の各画素値と前記ぼかし画像の各画素値との差と、予め設定された閾値とを比較し、該比較結果に基づいて、中間ぼかし画像を生成するステップとをコンピュータに実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、低ビット深度の画像から高ビット深度の画像を生成する画像処理装置およびプログラムに関するものである。
【背景技術】
【0002】
従来、デジタルカメラなどによる撮影では、データサイズが大きくなりすぎないように、各チャネルについて8ビットのRGB画像が撮影されることが多い。このように撮影された画像をレタッチする際、トーンカーブの傾きを大きくするなどの階調変換をおこなうと、トーンジャンプが発生することがある。トーンジャンプとは、本来なめらかに階調が変化する部分で、視覚が識別できる差より明らかに大きい階調の段差が生じることをいう。
【0003】
たとえば
図2に示すような、緩やかな階調変化の8ビットのグレースケールのグラデーション画像(2000×500画素)を考える。
図2に示すグラデーション画像の左端は画素値121であり、右端は140であり、その間の画素値を直線的に補間している。
【0004】
図2に示すグラデーション画像の画素値のヒストグラムは、
図46のようになる。
図2に示すグラデーション画像の画素値範囲[121,140]をトーンカーブによる階調変換によって[0,255]に伸長すると、
図47のような画像になり,トーンジャンプ(擬似輪郭)が発生する。
【0005】
このようにトーンジャンプが発生する理由は、階調変換した画像のヒストグラムが
図48に示すようになったためである。具体的には、たとえば階調変換前に画素値130および131だった隣接する画素は、階調変換後ではそれぞれ121および134になり、画素値の差は13になる。この場合、階調がなめらかに連続すべきグラデーション部分でも、隣接する画素の画素値が、画素値範囲12の度数ゼロの区間を挟んで隔てられる。この度数ゼロの区間によってトーンジャンプが発生する。このような画素値の分布を「櫛歯状分布」と呼ぶ。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
このようなトーンジャンプを抑制する方法としては、元の画像のチャネルあたりのビット深度を高める方法(たとえば8ビットではなく16ビットなど)がある。ビット深度が高ければ、傾きの大きなトーンカーブによる階調変換を施しても、階調変換後の各画素値の隔たりを、視覚が識別できる差より小さくすることができ、トーンジャンプが発生しない。
【0008】
しかしながら、デジタルカメラなどを用いて低ビット深度で一旦記録された画像は、画素値に一定の倍数をかけてそのビット深度を上げたとしても、各画素値の相対的な間隔は変わらないので、同じ階調変換をすればやはりトーンジャンプが生じてしまう。また、そのように高ビット深度の画像において階調変換などによりトーンジャンプが発生した場合、その画像を元の低ビット深度に変換しても、同じ理由でそのトーンジャンプは解消されない。
【0009】
このような課題に対して、従来、ビット深度増加後の各画素値を、その近傍を含む領域の平均値または荷重平均値とする、いわゆるぼかしフィルタを用いたぼかし処理が提案されている。撮影された画像は、それがどんなに鮮明なものであっても、撮像光学系の性能上、隣接する画素の画素値には極端な差が生じないということと、平均値演算によって低ビット深度の値とはちがう種々の値に変換されるということから、この方法は有効だといえる。また、特許文献1においては、εフィルタを用いて平滑化処理を施すことによって、トーンジャンプを抑制する方法が提案されている。
【0010】
しかしながら、トーンジャンプを解消する程度までぼかしを施すと、それによって画像のシャープネスは低下する。逆に、シャープネスをほとんど低下させない程度のぼかしを施しても、トーンジャンプは完全には解消されない。
【0011】
また、ビット深度増加後の画素値にノイズ(乱数)を加えるという方法も提案されている。これにより、16ビット化した後の各画素値に少しの範囲のゆらぎを与えることでヒストグラムの分布が広がり、櫛歯状分布を解消することができる。たとえば8ビットの画素値130の画素を16ビット化して画素値33410とした画素を10000画素集合させたヒストグラムは、
図49に示すように、やはり画素値33410だけにしか度数がない。
【0012】
8ビットの画像を16ビット化したので、8ビットの画素値の1のちがいは16ビットでは257である。これを1段差と呼ぶことにする。同じ画素値33410をもつ10000個の画素に対し、それらの画素値に標準偏差として0.5段差(画素値で128.5)の正規分布のノイズを加えると、ヒストグラムは
図50のようになる。
【0013】
8ビットの画素値121,122,・・・,140(20段階)をもつそれぞれ10000個の画素、合計200000画素で構成される画像を16ビット化すると、隣接する段階の間には画素値で256の幅で度数ゼロの区間が生じる。このヒストグラムは櫛歯状分布を示す。この画像に対し、同じ正規分布ノイズを加えたときのヒストグラムは
図51のようになり、櫛歯状分布が解消される。この処理によって得られた画像は、ある程度まで階調変換に対してトーンジャンプを目立たなくすることができる。
【0014】
しかしながら、上述した[121,140]→[0,255]のような急峻な階調変換をおこなった場合は、有効にトーンジャンプを除去することができない。なお、実際、上述した8ビットのグレースケールのグラデーション画像をこの方法によって処理し、[121,140]→[0,255]の階調変換をおこなった結果は
図52のようになり、元画像を単に階調変換した場合(
図47)と大差がない。
図52に示す画像の中央付近を拡大してみると、
図53のようになっており、つまり、ヒストグラムの櫛歯状態は解消されたが、トーンジャンプが発生した画像に均一なノイズが乗っただけであり、巨視的にはトーンジャンプが発生している状態に変わりはない。
【0015】
本発明は、上記事情に鑑み、階調変換によるトーンジャンプの発生を抑制することができ、かつ元の画像のシャープネスを維持することができる画像処理装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明の画像処理装置は、n(nは自然数)ビットの低ビット深度画像を受け付け、その低ビット深度画像に基づいて、ビット深度をn+α(αは自然数)ビットに上げた高ビット深度画像を生成するビット深度変更部と、高ビット深度画像に対してぼかし処理を施してぼかし画像を生成するぼかし画像生成部と、高ビット深度画像の各画素値とぼかし画像の各画素値との差と、予め設定された閾値とを比較し、その比較結果に基づいて、中間ぼかし画像を生成する中間ぼかし画像生成部とを備える。
【0017】
本発明の画像処理方法は、nビットの低ビット深度画像を受け付け、その受け付けた低ビット深度画像に基づいて、ビット深度をn+αビットに上げた高ビット深度画像を生成し、高ビット深度画像に対してぼかし処理を施してぼかし画像を生成し、高ビット深度画像の各画素値とぼかし画像の各画素値との差と、予め設定された閾値とを比較し、その比較結果に基づいて、中間ぼかし画像を生成する。
【0018】
本発明の画像処理プログラムは、nビットの低ビット深度画像を受け付けるステップと、その受け付けた低ビット深度画像に基づいて、ビット深度をn+αビットに上げた高ビット深度画像を生成するステップと、高ビット深度画像に対してぼかし処理を施してぼかし画像を生成するステップと、高ビット深度画像の各画素値とぼかし画像の各画素値との差と、予め設定された閾値とを比較し、その比較結果に基づいて、中間ぼかし画像を生成するステップとをコンピュータに実行させる。
【発明の効果】
【0019】
本発明の画像処理装置および方法並びにプログラムによれば、高ビット深度画像の各画素値とぼかし画像の各画素値との差と、予め設定された閾値とを比較し、その比較結果に基づいて、中間ぼかし画像を生成するようにしたので、階調変換によるトーンジャンプの発生を抑制することができ、かつ元の画像のシャープネスを維持することができる。
【図面の簡単な説明】
【0020】
【
図1】本発明の画像処理装置の一実施形態の概略構成を示すブロック図
【
図3】
図2に示す低ビット深度画像から生成した中間ぼかし画像の一例を示す図
【
図4】
図3に示す中間ぼかし画像に階調変換処理を施した階調変換画像の一例を示す図
【
図5】
図3に示す中間ぼかし画像の水平位置に対する画素値の変化を示す図
【
図6】
図2に示す低ビット深度画像に階調変換処理を施した階調変換画像の一例を示す図
【
図7】実施例2において生成された中間ぼかし画像の一例を示す図
【
図8】
図7に示す中間ぼかし画像に階調変換処理を施した階調変換画像の一例を示す図
【
図9】高ビット深度画像および
図7に示す中間ぼかし画像の水平位置に対する画素値の変化を示す図
【
図11】実施例3において生成された中間ぼかし画像の一例を示す図
【
図12】
図11に示す中間ぼかし画像に階調変換処理を施した階調変換画像の一例を示す図
【
図13】高ビット深度画像および
図11に示す中間ぼかし画像の水平位置に対する画素値の変化を示す図
【
図16】
図15に示す低ビット深度画像に階調変換処理を施した階調変換画像の一例を示す図
【
図17】実施例4において生成された中間ぼかし画像の一例を示す図
【
図18】
図17に示す中間ぼかし画像に階調変換処理を施した階調変換画像の一例を示す図
【
図19】
図17に示す直線L部分における高ビット深度画像、ぼかし画像および中間ぼかし画像の水平位置に対する画素値の変化を示す図
【
図20】実施例4において生成された中間ぼかし画像に階調変換処理を施した階調変換画像のその他の例を示す図
【
図21】種々の空間周波数を含む低ビット深度画像の一例を示す図
【
図22】実施例5において生成された中間ぼかし画像の例を示す図
【
図23】実施例5の比較例として、高ビット深度画像、ぼかし画像および中間ぼかし画像の水平位置に対する画素値の変化を示す図
【
図25】実施例5の比較例として、高ビット深度画像、ぼかし画像および中間ぼかし画像に階調変換処理を施した階調変換画像の低周波領域の拡大図
【
図27】実施例5の比較例として、高ビット深度画像、ぼかし画像および中間ぼかし画像に階調変換処理を施した階調変換画像の高周波領域の拡大図
【
図28】実際に撮影された低ビット深度画像の一例を示す図
【
図29】
図28に示す低ビット深度画像の画素値のヒストグラムを示す図
【
図31】
図28に示す低ビット深度画像に対して、
図30に示すトーンカーブを用いて階調変換処理を施した階調変換画像の一例を示す図
【
図32】
図31に示す階調変換画像の画素値のヒストグラムを示す図
【
図33】実施例において生成された中間ぼかし画像の一例を示す図
【
図34】
図33に示す中間ぼかし画像に階調変換処理を施した階調変換画像の一例を示す図
【
図35】
図34に示す階調変換画像の画素値のヒストグラムを示す図
【
図36】単一画素値からなる画像の画素値のヒストグラムを示す図
【
図37】
図36の単一画素値からなる画像に正規分布ノイズを加えた画像の画素値のヒストグラムを示す図
【
図38】
図2に示す低ビット深度画像に正規分布ノイズを加えた画像の一例を示す図。
【
図39】
図38に示す低ビット深度画像から生成された中間ぼかし画像(Δ=0.5段差の場合)の一例を示す図
【
図40】
図39に示す中間ぼかし画像に階調変換処理を施した階調変換画像の一例を示す図
【
図41】
図39に示す中間ぼかし画像の縦位置中央について、横位置に対する画素値の変化を示す図
【
図42】
図38に示す低ビット深度画像から生成された中間ぼかし画像(Δ=1.5段差の場合)のその他の例を示す図
【
図43】
図42に示す中間ぼかし画像に階調変換処理を施した階調変換画像の一例を示す図
【
図44】
図42に示す中間ぼかし画像の縦位置中央について、横位置に対する画素値の変化を示す図
【
図46】
図2に示す低ビット深度画像の画素値のヒストグラムを示す図
【
図47】
図3に示す中間ぼかし画像に階調変換処理を施した階調変換画像の一例を示す図
【
図48】
図46に示す階調変換画像の画素値のヒストグラムを示す図
【
図49】8ビット画像(画素値130)を16ビット化した画像の画素値のヒストグラムを示す図
【
図50】8ビット画像(画素値130)を16ビット化した画像に正規分布ノイズを加えた画像の画素値のヒストグラムを示す図
【
図51】8ビット画像(画素値120,122,・・・,140)を16ビット化した画像に正規分布ノイズを加えた画像の画素値のヒストグラムを示す図
【
図52】
図2に示す低ビット深度画像を16ビット化して正規分布ノイズを加え、階調変換処理を施した階調変換画像の一例を示す図
【発明を実施するための形態】
【0021】
以下、図面を参照して本発明の画像処理装置の一実施形態について詳細に説明する。
図1は、本実施形態の画像処理装置1の概略構成図である。
【0022】
画像処理装置1は、たとえばデジタルカメラなどで撮影された画像に対して、階調変換を施すことが可能であるとともに、その階調変換によってトーンジャンプが生じないように画像のビット深度を深める変換処理を施すことが可能な装置である。そして、画像処理装置は、その変換処理によって、画像のシャープネスが低下したり、ノイズが増えるなどのトレードオフを排除することができる装置である。
【0023】
ここで、上述したように階調変換によってトーンジャンプが発生する場合、それを解消するためには、ノイズを加えるよりも、その境界の明るい側では暗く、暗い側では明るく補正して、両側の画素値をなめらかに接続させればよい。このように、なめらかに接続させるには、やや広い範囲の画素値を反映するぼかし画像を基準にする。ただし、上述したように単純にぼかし画像に変換するだけでは、シャープネスが低下する。そこで、本実施形態では、本来の画像の画素値が急峻に変化する場所では、その変化をできるだけ維持するように、ビット深度を上げた画像の画素値をぼかし画像の画素値に近づける際の補正量の上下限を定める。これにより、元の画像で画素値が大きく変化する部分をぼかし画像に近づけすぎず、シャープネスを維持することができる。
【0024】
画像処理装置1は、たとえばコンピュータから構成され、CPU(Central Processing Unit)、ROM(Read Only Memory)およびRAM(Random Access Memory)などの半導体メモリやハードディスクなどの記憶媒体、並びに通信I/F(Interface)などを備えている。
【0025】
画像処理装置1は、半導体メモリまたはハードディスクなどの記憶媒体に予め記憶された画像処理プログラムをCPUによって実行することによって、後述する各部の処理を行う。本実施形態においては、CPUによって画像処理プログラムを実行することによって各部の処理を行うようにしたが、画像処理プログラムが実行する一部の機能または全部の機能をASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)、その他の電気回路などのハードウェアから構成するようにしてもよい。
【0026】
具体的には、画像処理装置1は、
図1に示すように、ビット深度変更部10、ぼかし画像生成部11、中間ぼかし画像生成部12および階調変換部13を備える。
【0027】
ビット深度変更部10は、nビットの低ビット深度画像を受け付け、その低ビット深度画像に基づいて、ビット深度をn+αビットに上げた高ビット深度画像を生成する。nおよびαは、自然数である。
【0028】
具体的には、ビット深度変更部10は、デジタルカメラで撮影されたRGB画像や印刷用に生成されたCMYK画像などのデジタル画像を低ビット深度画像として受け付ける。低ビット深度画像としては、たとえばR,G,Bの各チャネルが8ビットのRGB画像が受け付けられる。
【0029】
そして、ビット深度変更部10は、上述したような階調変換時のトーンジャンプの発生を防止するため、低ビット深度画像に対してビット深度変更処理を施して、ビット深度をn+αビットに上げた高ビット深度画像を生成する。ビット深度変更部10は、たとえば8ビットのRGB画像から16ビットのRGB画像を生成する。
【0030】
8ビットの画素値(10進数で0-255)を16ビット化(10進数で0-65535)する方法としては、たとえば8ビット値に256をかける方法や,8ビット値に257をかける方法などがある。256をかける第1の方法では2進数演算が非常に効率的にできるが、8ビット値の最大値255を16ビット化した値は65280であり、16ビット値のとりうる最大値65535にならない。257をかける第2の方法では8ビット値のとりうる範囲[0,255]が16ビット値のとりうる範囲[0,65535]に完全に一致する。第1の方法および第2の方法のどちらでもよいが、本実施形態では、断りのない限り、第2の方法を用いる。
【0031】
ぼかし画像生成部11は、ビット深度変更部10によって生成された高ビット深度画像に対してぼかし処理を施してぼかし画像を生成する。ぼかし処理としては、たとえばぼかしフィルタを用いた処理が行われる。
【0032】
ぼかしフィルタとしては、たとえば平均値フィルタやガウスぼかしフィルタなどを用いることができる。また、ぼかし領域(ぼかしフィルタのウィンドウ)の形状は、正方形や円、または異方性を考慮した長方形や楕円などを用いることができる。ガウスぼかしフィルタには、重みを与える標準偏差を種々設定することができる。ぼかしフィルタの種類およびガウスぼかしフィルタの重み付けについては、ユーザが任意に設定することができる。
【0033】
中間ぼかし画像生成部12は、高ビット深度画像の各画素値と、ぼかし画像生成部11によって生成されたぼかし画像の各画素値との差と、予め設定された閾値とを比較し、その比較結果に基づいて、中間ぼかし画像を生成する。この中間ぼかし画像が、階調変換によるトーンジャンプを抑制することができ、かつシャープネスを維持することができる画像である。中間ぼかし画像の生成方法については、後で詳述する。
【0034】
階調変換部13は、中間ぼかし画像生成部12によって生成された中間ぼかし画像に対して階調変換処理を施し、階調変換処理後の階調変換画像を表示装置2に出力して表示させる。階調変換については、ユーザが任意に設定することが可能である。
【0035】
次に、中間ぼかし画像生成部12における中間ぼかし画像の生成処理について、詳細に説明する。ここでは、第1~5の中間ぼかし画像生成処理について説明する。
【0036】
まず、第1の中間ぼかし画像生成処理は、下式(1)に基づいて、中間ぼかし画像Cを生成する。下式(1)のcは、中間ぼかし画像Cを構成する各画素値である。
・・・・(1)
【0037】
ただし、上式(1)において、aは、画素値cと同じ画素位置の高ビット深度画像の画素値であり、bは、画素値cと同じ画素位置のぼかし画像の画素値であり、Δは、予め設定された閾値であって、正の任意の定数である。
【0038】
上式(1)では、ビット深度を上げた高ビット深度画像A(画素値=a)と、高ビット深度画像Aにぼかしフィルタをかけたぼかし画像B(画素値=b)を用いて、上式(1)で定める中間ぼかし画像C(画素値=c)をもとめる。
【0039】
上式(1)の右辺では、画素値aに対して補正項を加えるが、その補正量は±Δ(Δ>0)を上下限とする。Δの範囲については、後で詳述する。なお、上式(1)におけるmax演算およびmin演算に代えて、補正量を実質的に制限する別の非線形関数を用いるようにしても良い。
【0040】
ここで、上式(1)における最適なぼかし画像B(画素値=b)の設定は、元の低ビット深度画像の階調変化の緩やかさや、そのビット深度を上げた高ビット深度画像に対する階調変化の急峻さによって変わる。元の低ビット深度画像の階調変化が緩やかなほど、また、そのビット深度を上げた高ビット深度画像に与える階調変化が急峻なほど、ぼかしフィルタのウィンドウを大きくすることが好ましい。一方、ぼかしフィルタのウィンドウが大きいほど画像処理装置1の演算負荷が増加するので、無制限に大きくするのは好ましくない。ぼかしフィルタのウィンドウサイズは、上記のような観点から、ユーザが任意に設定可能である。
【0041】
次に、第2の中間ぼかし画像生成処理について説明する。
【0042】
元の低ビット深度画像に含まれる緩やかなグラデーションがその端部で大きなコントラスト差のある領域に接する場合、その接続部分近傍で不自然な階調変化が発生することがある。これを防ぐために、第2の中間ぼかし画像生成処理では、上式(1)に代えて、下式(2)に基づいて、中間ぼかし画像C(画素値=c)を生成する。
・・・(2)
【0043】
上式(2)においても、ぼかしフィルタやΔの定め方は上式(1)と同様である。
【0044】
なお、上式(2)による効果については、後で詳述する。
【0045】
次に、第3の中間ぼかし画像生成処理について説明する。
【0046】
上式(2)を用いた第2の中間ぼかし画像生成処理においては、|b-a|がΔ以上か未満かによって、画素値cをbかaに切り替えるようにしたが、第3の中間ぼかし画像生成処理においては、代わりに、2つの閾値Δ
1、Δ
2(0<Δ
1<Δ
2)を用いて、下式(3)のように画素値cを滑らかに変化させる。これにより、トーンジャンプの抑制効果をさらに得ることができる。
・・・(3)
【0047】
f(b-a)は、f(Δ1)=b、f(Δ2)=a、かつ|b-a|∈[Δ1,Δ2]を満たす単調関数である。ぼかしフィルタやΔ1、Δ2の定め方は、上式(2)と同様である。
【0048】
次に、第4の中間ぼかし画像生成処理について説明する。
【0049】
上式(2)を用いた第2の中間ぼかし画像生成処理では、ビット深度を上げた高ビット深度画像Aの画素値aをぼかし画像Bの画素値bに近づける際に、その補正量が予め設定した閾値Δを超える場合は、補正量をゼロにする。そこで、上式(2)の画素毎の演算処理を行う代わりに、高ビット深度画像Aのレイヤーの上に、ぼかし画像Bのレイヤーを重ね、ぼかし画像Bのレイヤマスクとしてマスク画像M(画素値=m)を、下式(4)に基づいて演算するようにしてもよい。そして、高ビット深度画像Aに対して、マスク画像Mおよびぼかし画像Bを重ねることによって、中間ぼかし画像Cを生成する。
・・・(4)
上式(4)の値「1」は不透明度100%を表し、値「0」は不透明度0%を表す。Δは、予め設定された閾値であって、正の任意の定数である。
【0050】
第4の中間ぼかし画像生成処理も第2の中間ぼかし画像生成処理と同様の効果を得ることができる。また、第4の中間ぼかし画像生成処理では、第2の中間ぼかし画像生成処理のように画素毎の演算ではなく、レイヤでの演算になるので、より演算を高速化することができる。
【0051】
次に、第5の中間ぼかし画像生成処理について説明する。
【0052】
第2の中間ぼかし画像生成処理に対する第3の中間ぼかし画像生成処理と同様に、第5の中間ぼかし画像生成処理は、第4の中間ぼかし画像生成処理の上式(4)の代わりに、閾値Δ
1、Δ
2(0<Δ
1<Δ
2)を用いて、下式(5)を用いて、mがなめらかに変化するようにした処理である。
・・・(5)
【0053】
f(b-a)は、f(Δ1)=b、f(Δ2)=a、かつ|b-a|∈[Δ1,Δ2]を満たす単調関数である。ぼかしフィルタやΔ1、Δ2の定め方は、上式(4)と同様である。また、第5の中間ぼかし画像生成処理では、第3の中間ぼかし画像生成処理のように画素毎の演算ではなく、レイヤでの演算になるので、より演算を高速化することができる。
【0054】
また、第1~第5の中間ぼかし画像生成処理のいずれの方法においても特徴的なことは、画像中の階調が緩やかに変化する部分(低周波領域)とシャープネスに強く関与する部分(高周波領域)を判別する方法として、実空間処理だけを行い、フーリエ変換などの周波数空間への変換処理を行わないことである。これにより、演算処理の負荷を減らすことができる。
【0055】
本実施形態の画像処理装置1によれば、上記第1~第5の中間ぼかし画像生成処理によって中間ぼかし画像を生成するようにしたので、すなわちビット深度を上げた高ビット深度画像の画素値をぼかし画像の画素値に近づける際の補正量の上下限を定めるようにしたので、階調変換によるトーンジャンプの発生を抑制することができ、かつ元の画像のシャープネスを維持することができる。
【実施例0056】
次に、本実施形態の画像処理装置1のより具体的な実施例について説明する。以下の実施例では、低ビット深度画像として8ビットのグレースケール画像を用い、高ビット深度画像を16ビットのグレースケール画像とした。ただし、変更前および変更後のビット深度については、8ビットおよび16ビットに限定されるものではない。また、カラー画像の各チャネルに対して、これらグレースケール画像に対する処理と同じ処理を行えば、カラー画像についても同等の効果を得ることができる。
(実施例1)
【0057】
図2に示す低ビット深度画像を16ビット化した高ビット深度画像Aに対し、縦横101画素のウィンドウによる平均値フィルタをかけて、ぼかし画像Bと、Δ=0.5段差(16ビット画素値における128.5)として、上式(1)によって得た中間ぼかし画像Cを
図3に示す。なお、平均値フィルタは、画像境界にある画素とおなじ画素値の画素が画像境界の外側にも連続して存在するとして計算した(以下で説明する実施例における他のフィルタにおいても同じ条件とする)。
【0058】
図3に示す中間ぼかし画像Cは、
図2に示す8ビットの低ビット深度画像と全く同じに見える。しかし、
図3に示す中間ぼかし画像Cに対して、
図46に示す階調変換処理後の階調変換画像と同等の階調変換処理を施した階調変換画像Dは、
図4のようになる。
図46に示す階調変換画像と異なり、トーンジャンプは発生しなかった。
【0059】
なお、
図46に示す階調変換画像の階調変換は、8ビットの低ビット深度画像を[121,140]→[0,255]とする階調変換であるが、
図2に示す画像は、16ビットの高ビット深度画像なので、実際には[31097,35980]→[0,65535]とする階調変換である。以降、高ビット深度画像に対して「同等の階調変換」を施すという言葉は、このような意味で使用する。
【0060】
16ビットの高ビット深度画像Aおよび
図3に示す中間ぼかし画像Cについて、水平方向の画素値の変化を
図5に示す。
図5に示すグラフaが、高ビット深度画像Aの画素値であり、グラフcが、中間ぼかし画像Cの画素値である。グラフaにおける階段状変化の1段分の高さが、上述した1段差である。
図2および
図3に示すいずれの画像も、そのままであれば滑らかなグラデーションに見えるが、階調変換によってコントラストを強めると、高ビット深度画像Aではトーンジャンプが発生し、
図3に示す中間ぼかし画像Cではトーンジャンプが発生しなかった。
(実施例2)
【0061】
上式(1)におけるぼかし画像Bを得るためのぼかしフィルタとして、正方形の平均値フィルタを用いる場合、
図5に示すグラフcのような完全に滑らかな階調を実現するためのフィルタサイズは、元の8ビットの低ビット深度画像において同じ画素値が連続する最長区間の長さ以上である必要がある。しかしながら、実際のレタッチでは、
図46の例で施した[121,140]→[0,255]のような、勾配を13倍以上にも強調するような場合は非常にまれであり、多くの場合、2-3倍程度までである。その程度でなければ他の階調範囲の画像のコントラストが非常に小さくなってしまうからである。階調変換の勾配増加を現実的な程度に設定する場合、フィルタサイズはそこまで大きくしなくとも、トーンジャンプのない実質的になめらかな階調変化を得ることができる。
【0062】
図2に示す低ビット深度画像の画素値範囲[121,140]をトーンカーブによる階調変換によって、その4倍の[92,168]に伸長する場合を考える。その結果、
図6に示すような階調変換画像Dになり、やはりトーンジャンプが発生した。
【0063】
そこで、実施例2として、
図2に示す低ビット深度画像を16ビット化した高ビット深度画像Aに対し、縦横67画素の正方形ウィンドウによる平均値フィルタをかけた画像をぼかし画像Bとし、Δ=0.5段差(16ビット画素値における128.5)として、上式(1)によって得た中間ぼかし画像Cを
図7に示す。
【0064】
図7に示す中間ぼかし画像Cも
図2に示す低ビット深度画像と全く同じに見えるが、
図7に示す中間ぼかし画像Cに対して、
図6に示す階調変換画像Dに施した階調変換と同等の階調変換を施した階調変換画像Dは、
図8のようになり、
図6に示す階調変換画像Dと異なり、トーンジャンプは発生しなかった。
【0065】
16ビットの高ビット深度画像Aおよび
図7に示す中間ぼかし画像Cについて、水平方向の画素値の変化を
図9に示す。
図9に示すグラフaが、高ビット深度画像Aの画素値であり、グラフcが、中間ぼかし画像Cの画素値である。グラフaにおける階段状変化の1段分の高さが1段差である。また、
図9の中央部の拡大図を
図10に示す。いずれの画像も、そのままであれば滑らかなグラデーションに見えるが、階調変換によってコントラストを強めると、高ビット深度画像Aではトーンジャンプが発生し、
図7に示す中間ぼかし画像Cではトーンジャンプが発生しなかった。
【0066】
実施例2の場合、平均値フィルタのサイズが、元の低ビット深度画像で同一画素値の連続する長さ(100画素)より短い67画素なので、
図10に示すようにグラフcは勾配のある区間と平坦な区間が交互に現れて一様な勾配ではないが、
図8に示す階調変換後の階調変換画像Dにおいても視覚的に違和感のない一様性が得られた。実施例2では、平均値フィルタのサイズを小さくしたので、演算処理の負担が減っている。
(実施例3)
【0067】
実施例2における、
図2に示す低ビット深度画像に対する上式(1)に基づく第1の中間ぼかし画像生成処理において、標準偏差=25画素、縦横101画素の正方形ウィンドウによるガウスぼかしフィルタをかけた画像をぼかし画像Bとし、Δ=0.5段差(16ビット画素値における128.5)として得た中間ぼかし画像Cを
図11に示す。
【0068】
図11の中間ぼかし画像Cも
図2に示す低ビット深度画像と全く同じに見えるが、
図6に示す階調変換画像Dに施した階調変換と同等の階調変換を施した階調変換画像Dは、
図12のようになり、
図6に示す階調変換画像Dと異なり、トーンジャンプは発生しなかった。
【0069】
16ビットの高ビット深度画像Aおよび
図11に示す中間ぼかし画像Cについて、水平方向の画素値の変化を
図13に示す。
図13に示すグラフaが、高ビット深度画像Aの画素値であり、グラフcが、中間ぼかし画像Cの画素値である。グラフaにおける階段状変化の1段分の高さが1段差である。
【0070】
また、
図13の中央部の拡大図を
図14に示す。いずれの画像も、そのままであれば滑らかなグラデーションに見えるが、階調変換によってコントラストを強めると、高ビット深度画像Aではトーンジャンプが発生し、
図11に示す中間ぼかし画像Cではトーンジャンプが発生しなかった。実施例3の場合、ガウスぼかしフィルタの特徴により、グラフaの勾配が元の高ビット深度画像Aの画素値にしたがって局所的に変化するが、画素値変化に折れ線は生じなかった。一様な勾配ではないが、階調変換後の階調変換画像Dにおいても視覚的に違和感のない滑らかさが得られた。
(実施例4)
【0071】
実施例4では、8ビットの低ビット深度画像として、
図15に示すように、緩い勾配のグラデーションの両端に、極端な画素値0および画素値255をもつ領域が接するような8ビットのグレースケール画像を用いた。
図15に示す低ビット深度画像のグラデーション部分の画素値範囲は[122,139]である。
【0072】
図15に示す低ビット深度画像の画素値範囲[122,139]をトーンカーブによる階調変換によってその10倍の[42,212]に伸長すると、
図16に示すような階調変換画像Dになり、トーンジャンプが発生した。
【0073】
図15に示す低ビット深度画像を16ビット化した画像を高ビット深度画像Aとし、縦横101画素のウィンドウによる平均値フィルタをかけた画像をぼかし画像Bとし、Δ=0.5段差(16ビット画素値における128.5)として、上式(1)によって得た中間ぼかし画像Cを
図17に示す。なお、
図17に示す直線Lは、中間ぼかし画像Cに含まれない。
図17に示す中間ぼかし画像Cは、
図15に示す低ビット深度画像と同じように見える。
【0074】
図17に示す中間ぼかし画像Cに対して、
図16に示す階調変換画像Dに施した階調変換と同等の階調変換を施した階調変換画像Dを
図18に示す。
図16に示す階調変換画像Dと異なり、グラデーションの主要部分にトーンジャンプは発生しなかった。しかしながら、グラデーションの両端の白(画素値=255)や黒(画素値=0)のパッチとの境界の近傍で不自然な階調が生じた(波括弧の範囲R)。
【0075】
図18に示す階調変換画像Dにおける不自然な階調は、階調変換前の
図17に示す中間ぼかし画像Cにおいてすでに発生している。
図17に示す直線L部分について、上式(1)の画素値a,b,c(cは、
図17に示す中間ぼかし画像Cの画素値)をそれぞれ
図19にグラフa、グラフb、グラフcで示す。なお、グラフaとグラフcは正しい位置に描かれているが、グラフbは、見やすくするため、縦軸上方に若干ずらして描かれ、後述するグラフdは縦軸下方に同じだけずらして描かれている。実際には、画素値範囲[1750,1850]では、グラフb、グラフcおよびグラフdが重なっており、画素範囲[1851,1900]では、グラフaおよびグラフdが重なっている。
【0076】
図19に示すとおり、
図17に示す直線L部分において、グラデーションの右端から白パッチに移る直前(
図19に示す点P1)でグラフbは急激に大きくなるが、グラフcは、グラフaからΔだけ大きい値で頭打ちになり、以後,白パッチ領域となるまではグラフa+Δを維持することがわかる。つまり点P1でグラフcは最大でΔだけ増加する。このΔは、0.5段差(16ビット画素値における128.5)であるが、
図18に示す階調変換画像Dのような、コントラストを10倍に伸長する階調変換をおこなうと、点P1での画素値の増分は5段差(16ビット画素値における1285)になり、
図17に示す中間ぼかし画像Cのような不自然な階調変化として認識される(なお、点P2でも画素値a,cは急激に増加するが、それは元の8ビットの低ビット深度画像がそのような変化をするので問題ではない)。
【0077】
そこで実施例4では、上式(2)を用いて中間ぼかし画像Cを得た。具体的には、高ビット深度画像Aの画素値aとぼかし画像Bの画素値bとの差分が予め設定された閾値Δを超えない条件では、中間ぼかし画像Cの画素値cは、画素値bに等しいとし、画素値aと画素値bの差分がΔを超える条件では、画素値cを画素値aとする中間ぼかし画像生成処理を行う。この中間ぼかし画像生成処理の結果、画素値cは、
図19におけるグラフdのようになり、点P1での大きな変化はなくなった。
【0078】
以上は、
図17の右上の直線L部分についての説明であるが、このような不自然な階調は右下のグラデーションの明るい端と黒パッチの境界近傍、左上のグラデーションの暗い端と黒パッチの境界近傍、および左下のグラデーションの暗い端と白パッチの境界近傍においても生じている。これらの不自然な階調も全て上式(2)を用いた中間ぼかし画像生成処理によって解消された。
【0079】
このようにした得られた中間ぼかし画像Cに対して、
図18に示す階調変換画像Dの階調変換と同等の階調変換を施した階調変換画像Dを
図20に示す。
図20に示す階調変換画像Dは、トーンジャンプもなく、また、
図18に示す階調変換画像Dで生じたグラデーションと白/黒パッチとの境界近傍の不自然な階調も解消された。
(実施例5)
【0080】
実施例5では、8ビットの低ビット深度画像として、
図21に示すような、種々の空間周波数を含む8ビットのグレースケール画像を用いた。
図21に示すグレースケール画像の画素値の範囲は[102,153]である。
図21に示す低ビット深度画像を16ビット化した高ビット深度画像Aに対し、縦横31画素の正方形ウィンドウによる平均値フィルタをかけた画像をぼかし画像Bとし、Δ=0.5段差(16ビット画素値における128.5)として、上式(1)によって得た中間ぼかし画像Cを
図22に示す。
【0081】
図22に示す中間ぼかし画像Cは、
図21に示すグレースケール画像と同じに見える。実施例5に対する比較例として、高ビット深度画像Aに対して、従来の方法である平均値フィルタをかけたぼかし画像E(画素値=e)を用いた。ぼかし画像Eを得る平均値フィルタのサイズは、縦横5画素とした。高ビット深度画像A、ぼかし画像Eおよび中間ぼかし画像Cのそれぞれについて、水平位置に対する画素値a、eおよびcを
図23に示す。
図23では、画素値a、eおよびcの3つのプロットが重なって見にくいので、低周波領域(左側の四角S1部分)の拡大図を
図24に示し、高周波領域(右側の四角S2部分)の拡大図を
図26に示す。
【0082】
図24に示す低周波領域では,グラフaが階段状変化を示し、グラフeはその段差がやや緩やかになっているが、変化部分の傾きはやはり大きい。一方、グラフcは滑らかな階調変化が得られた。高ビット深度画像A、ぼかし画像E、中間ぼかし画像Cに対して、階調変換([102,153]→[26,230])を施した画像を、それぞれ階調変換画像A+、階調変換画像E+、階調変換画像C+と呼ぶ。階調変換画像A+,E+,C+の低周波領域の拡大図を
図25に示す。
【0083】
図25に示すように、上段の階調変換画像A+では明らかにトーンジャンプが発生した。中段の階調変換画像E+では程度がやや抑えられるものの、やはりトーンジャンプが認められた。一方、下段の階調変換画像C+ではトーンジャンプは発生しなかった。
【0084】
図26に示す高周波領域では,グラフaの振幅に対し、グラフeの振幅は周波数が高くなるほど減衰し、すなわちコントラストが減少した。一方、グラフcの振幅は、グラフaの振幅とほとんど等しく、片側で最大Δしか低下しなかった。すなわち、
図27に示すように、階調変換画像A+に対し、階調変換画像E+では、周波数が高くなるほどコントラストが低下した。一方、階調変換画像C+ではコントラストは実質的に低下しなかった。
【0085】
実施例5では、階調変換による低周波領域でのトーンジャンプを抑制するだけでなく、高周波領域のコントラスト(シャープネス)も維持することができる。従来のぼかし画像による階調変換画像E+において、平均値フィルタのサイズ(縦横5画素)を実施例5と同じ(縦横31画素)にすれば、中間ぼかし画像C+と同じく低周波領域のトーンジャンプの発生が解消することができるが、高周波領域ではコントラストの減少がさらにひどくなる。逆に、平均値フィルタのサイズを小さくすれば、高周波領域のコントラストの現象は抑えられるが、低周波領域のトーンジャンプがさらに顕著に発生する。
(実施例6)
【0086】
実施例6では、8ビットの低深度ビット画像として、
図28に示すような、実際に撮影された8ビットのグレースケール画像を用いた。
【0087】
図28に示すグレースケール画像の画素値のヒストグラムを
図29に示す。
図29に示すように、階調範囲が狭い領域に制限されている。
図28に示すグレースケール画像のコントラストを上げるために、
図30に示すようなトーンカーブTCによって階調変換した。
図31は、階調変換後の階調変換画像Dである。
図31に示すように、空の部分に多数のトーンジャンプが発生した。階調変換後の階調変換画像Dの画素値のヒストグラムを
図32に示す。
図32に示すように、度数が櫛歯状に分布している。
【0088】
実施例6では、
図28に示す低ビット深度画像を16ビット化した高ビット深度画像Aに対し、縦横51画素のウィンドウによる平均値フィルタをかけた画像をぼかし画像Bとし、Δ=1.5段差(16ビット画素値における385)として、上式(2)を用いて得た中間ぼかし画像Cを
図33に示す。
図33に示すように、中間ぼかし画像Cは、
図28に示す低ビット深度画像と同じに見える。
【0089】
図33に示す中間ぼかし画像Cに対して、
図31に示す階調変換画像Dの階調変換と同等の階調変換をした階調変換画像Dを
図34に示す。
図31に示す階調変換画像Dと異なり、トーンジャンプは発生しなかった。なお、上式(2)において、Δ=1.5段差(16ビット画素値における385)とした理由は、実際の画像では撮像素子の性能上、若干のノイズが加わっているので、スムーズな階調変化を実現するために、やや大きい値とした。このΔの設定でも時計の各部や文字、枝、雲の形などのディテールは失われなかった。
【0090】
図34に示す階調変換画像Dの画素値のヒストグラムを
図35に示す。
図35に示すように、櫛歯状の分布が解消されている。
図35では、ヒゲ状のピークが認められるが、これは画素値が急激に変化する高周波部分においてぼかし処理をしていないためであり,ゆるやかな階調変化部分においてトーンジャンプを抑え切れていないわけではない。
【0091】
上述したように、実際に撮影された8ビットのグレースケール画像においても、本実施形態の中間ぼかし画像生成処理によって生成された中間ぼかし画像は、トーンカーブの傾きを大きくするなどの階調変換をおこなったときもトーンジャンプの発生を抑えることができ、シャープネスの低下を抑え、かつノイズの発生も抑えるという効果が確認できた。
【0092】
次に、本実施形態の中間ぼかし画像生成処理で用いる閾値Δの設定方法について説明する。
【0093】
上述した実施例1~5ではΔ=0.5段差、実施例6ではΔ=1.5段差としたが、もちろん、Δの値としては、これらの値以外の値も選択可能である。画像によって最適なΔの選択は異なるが、その定め方の例を説明する。
【0094】
上記実施形態では、緩やかに階調が変化する低ビット深度画像に対し、トーンカーブの傾きを大きくする階調変換をおこなった際のトーンジャンプの発生を抑止する方法について説明している。つまり、処理対象の低ビット深度画像のもともとの階調変化が小さい場合を想定している。もともとの階調変化が大きい場合、トーンカーブの傾きを大きくする階調変換をおこなった際のトーンジャンプの発生は問題にならないことが多い。
【0095】
実施例1~5における処理対象の低ビット深度画像は、意図的に作成された画像であるが、これらの低ビット深度画像には共通する特徴がある。それは処理対象の低ビット深度画像の画素値にノイズ成分がないことである。
【0096】
実施例1~3に用いられる低ビット深度画像としてのグレースケール画像(
図2)は、横幅2000画素で画素値が121から140まで変化する。横方向に隣接するどの2画素も、その画素値の差は0または1である。
【0097】
実施例4に用いられる低ビット深度画像としてのグレースケール画像(
図15)は、緩い勾配のグラデーションの両端に極端な画素値0、画素値255をもつ領域が接しているが、この両端を除く緩い勾配のグラデーション部分においてトーンジャンプが抑制される。このグラデーション部分の横方向に隣接するどの2画素もその画素値の差は0または1である。
【0098】
実施例5に用いられる空間周波数が変化する低ビット深度画像としてのグレースケール画像(
図21)は、横方向の画素位置に対して周期が連続的に変化する正弦関数を8ビット値に丸めた値を画素値としている。このグレーススケール画像でトーンカーブの傾きを大きくする階調変換をおこなった際、階調が低周波で変化する部分においてトーンジャンプが抑制される。この部分の横方向に隣接するどの2画素も、その画素値の差は0または1である。
【0099】
実施例1~5の低ビット深度画像で階調変換によるトーンジャンプが問題になるのは、隣接する画素で画素値変化が1の場合である。8ビットの低ビット深度画像を16ビット化して高ビット深度画像とした場合、8ビットの画素値1の変化は16ビットの画素値257(=1段差)の変化になる。高ビット深度画像のトーンジャンプを抑止するためには、大局的に緩やかな(水平部分が長い階段状の)画素値変化をする場合、この段差部分の上側近傍で画素値を最大でΔだけ小さくし、下側近傍で画素値を最大でΔだけ大きくして、段差部分を滑らかに接続する。したがって階調変化が単純な実施例1~5の場合、Δ=0.5段差としておけば、16ビット化された高ビット深度画像の滑らかな画素値変化が実現できる。したがって、Δは、Δ≧0.5とすることが好ましい。
【0100】
一方、実施例6の処理対象の低ビット深度画像は、デジタルカメラで実際に撮影された画像である。デジタルカメラなどの撮像素子で撮影された画像は、実施例1~5における低ビット深度画像のような意図的に作成された画像と異なり、ノイズが重畳している。緩やかな階調変化にノイズが重畳している場合、上式(1)~上式(5)を用いてΔ=0.5またはΔを0.5からわずかに大きくした程度の値とした場合、高ビット化してトーンカーブの傾きを大きくする階調変換を施した際、トーンジャンプの十分な抑制が難しい場合がある。以下、その例について説明する。
【0101】
図2に示す8ビットのグレースケール画像(121≦画素値≦140)にμ=0、σ=0.5の正規分布ノイズを加えた画像を考える。
図36は、100000画素が単一画素値128からなる画像のヒストグラムである。この画像に正規分布ノイズを加えた画像のヒストグラムは
図37のようになる。この画像の最小画素値は125であり、最大画素値は130であった。いずれもビンの幅は1である。
【0102】
図2に示す8ビットのグレースケール画像に上記正規分布ノイズを加えた画像は
図38のようになる。一見したところ、
図38に示すグレースケール画像は、
図2のグレースケール画像と見分けがつかない。
【0103】
図38に示すグレースケール画像(低ビット深度画像)を16ビット化した高ビット深度画像Aに対し、縦横101画素のウィンドウによる平均値フィルタをかけてぼかし画像Bとし、Δ=0.5段差(16ビット画素値における128.5)として、上式(1)によって得た中間ぼかし画像Cを
図39に示す。
図39に示す中間ぼかし画像Cは、実施例1で生成した中間ぼかし画像C(
図3)と見分けがつかない。
【0104】
図39に示す中間ぼかし画像Cに対して、
図4に示す階調変換画像Dに施した階調変換と同等の階調変換を施した階調変換画像Dは
図40のようになる。
図4に示す階調変換画像Dと異なり、トーンジャンプが発生する。この理由は、
図39に示す中間ぼかし画像Cに上記正規分布ノイズが重畳しているためである。
図39に示す中間ぼかし画像Cの縦位置中央について、横位置に対する画素値の変化を
図41に示す。
図5に示すグラフcとは大きく異なる。
図41において、多くのサンプル(横位置に対する画素値)は左下から右上へ伸びる直線上に存在するが、この直線の画素値から±0.5段差より遠く隔たったサンプルは、上式(1)の計算によって、ぼかしフィルタをかけた画素値bではなく、単純にビット深度を上げた画素値aが選択される。
図40に示す階調変換画像Dでは、これら重畳したノイズに相当する画素が孤立した点ではなく集団のように見えて、その集団が横位置によってちがう画素値分布をとるために、トーンジャンプのように見える。
【0105】
この種のトーンジャンプを抑止するには、上の例でΔ=0.5段差とする代わりに、ノイズの画素値が、ぼかしフィルタをかけた画素値bから隔たる範囲をほぼ、あるいは完全に内包するようにΔの値を大きくすればよい。ただし、Δの値を大きくしすぎると、
図19の点P1のグラフdがグラフbに引きずられて、擬似的な輪郭が発生することがあるので、Δの値は必要最小限にとどめることが望ましい。
【0106】
図38に示す低ビット深度画像を16ビット化した高ビット深度画像Aに対し、縦横101画素のウィンドウによる平均値フィルタをかけてぼかし画像Bとし、Δ=1.5段差(16ビット画素値における385.5)として、上式(1)によって得た中間ぼかし画像Cを
図42に示す。
図42に示す中間ぼかし画像Cは、
図3に示す中間ぼかし画像Cや
図39に示す中間ぼかし画像Cと見分けがつかない。
【0107】
図42に示す中間ぼかし画像Cに対して、
図4や
図40に示す階調変換画像Dに施した階調変換と同等の階調変換を施した階調変換画像Dは
図43のようになる。
図43に示す階調変換画像Dでは、
図40に示す階調変換画像Dと異なり、トーンジャンプは発生しない。
【0108】
図42に示す中間ぼかし画像Cの縦位置中央について、横位置に対する画素値の変化を
図44に示す。
図41のグラフとは異なり、ほとんどのサンプルは左下から右上へ伸びる直線上に存在するようになる。
【0109】
上述したように、最適なΔの値(高ビット化した際にトーンジャンプを発生せず、画像のシャープネスも損なわれない値)は、画像によって異なり、具体的には画像に重畳しているノイズの画素値範囲に依存する。
【0110】
実施例1―5のような意図的に作成した画像は、ノイズが重畳していない、すなわち、本来階調が一定であるべき領域での画素値のヒストグラムの幅が0であるので、Δの値として上記の最低限の値である0.5段差を設定すればよかった。
【0111】
一方、実施例6のような、実際にデジタルカメラで撮影された画像では,ノイズが重畳しているので、すなわち、本来階調が一定であるべき領域での画素値のヒストグラムの幅が0より大きいので、この例では、Δ=1.5段差とした場合に、良好な結果が得られた。
【0112】
したがって、Δをどの程度の値に選ぶべきかの指標として、この「本来階調が一定であるべき領域での画素値のヒストグラムの幅」を基準にすることができる。
【0113】
そのため、画像中の「本来階調が一定であるべき領域」を指定し、その領域での「画素値のヒストグラムの幅」を測定する。
【0114】
「本来階調が一定であるべき領域」の定義には種々の方法があるが、一例として、所定の画素に注目したとき、その画素値と、その近傍(たとえば注目画素を中心とした5×5画素の正方形領域)の画素の画素値を平均した値とで、差が小さい(たとえば8ビット画素値で1以下である)場合、その画素は「本来階調が一定であるべき領域」とみなすことができる。すなわち、所定の画素とその近傍画素との濃度差が、所定の閾値以下である場合に、その所定の画を本来階調が一定であるべき領域に属する画素と認識するようにしてもよい。
【0115】
また、「画素値のヒストグラムの幅」の定義にも種々の方法があるが、一例として、所定の画素に注目したとき、その画素値と、その近傍(たとえば注目画素を中心とした5×5画素の正方形領域)の画素の画素値を平均した値との差を測定する。そして、上記「本来階調が一定であるべき領域」に属する全画素についての上記差の統計分布を測定したときの標準偏差とすることができる。
【0116】
実施例6の元画像(
図28)に対し,上記「本来階調が一定であるべき領域」の一定義にしたがって選択した領域は、
図45に示す2値画像の白画素部分のようになる。この領域(白画素部分)で上記「画素値のヒストグラムの幅」の一定義にしたがった画素値の統計分布の標準偏差σは,8ビット画素値の単位(0-255)でσ=0.2610であった。
【0117】
最適なΔの選び方として,「本来階調が一定であるべき領域での画素値のヒストグラムの幅」をすべて、あるいはほぼすべてを含めるために、σの何倍を設定すればよいかを考える。ここで、Δを5σとすれば、Δ=1.3となり、6σとすれば、Δ=1.6となる(いずれも小数点以下第2位を四捨五入した)。Δ=nσとしたとき、nを大きくすればノイズの重畳によるトーンジャンプをより完全に抑えられるが、前述のようにΔの値を大
きくしすぎると、
図19の点P1のグラフdがグラフbに引きずられて、擬似的な輪郭が発生することがあるので、Δの値は必要最小限にとどめることが望ましい。現実的にはこの条件では、nは、5-6程度に設定することが好ましい。
【0118】
本発明の画像処理装置に関し、さらに以下の付記を開示する。
(付記)
【0119】
本発明の画像処理装置において、中間ぼかし画像生成部は、下式に基づいて、中間ぼかし画像の各画素値cを求めることができる。
【0120】
ただし、aは、画素値cと同じ画素位置の高ビット深度画像の画素値であり、bは、画素値cと同じ画素位置のぼかし画像の画素値であり、Δは、閾値であって、正の定数である。
【0121】
また、本発明の画像処理装置において、中間ぼかし画像生成部は、下式に基づいて、中間ぼかし画像の各画素値cを求めることができる。
【0122】
ただし、aは、画素値cと同じ画素位置の高ビット深度画像の画素値であり、bは、画素値cと同じ画素位置のぼかし画像の画素値であり、Δは、閾値であって、正の定数である。
【0123】
また、本発明の画像処理装置において、中間ぼかし画像生成部は、下式に基づいて、中間ぼかし画像の各画素値cを求めることができる。
【0124】
ただし、aは、画素値cと同じ画素位置の高ビット深度画像の画素値であり、bは、画素値cと同じ画素位置のぼかし画像の画素値であり、Δ
1およびΔ
2は、閾値であって、正の定数であり、f(b-a)は、f(Δ
1)=b,f(Δ
2)=a,|b-a|∈[Δ
1,Δ
2]を満たす単調関数である。
【0125】
また、本発明の画像処理装置において、中間ぼかし画像生成部は、高ビット深度画像に対して、下式に基づいて各画素値mが求められるレイヤマスクとぼかし画像を重ねることによって、中間ぼかし画像を生成することができる。
【0126】
ただし、aは、画素値cと同じ画素位置の高ビット深度画像の画素値であり、bは、画素値cと同じ画素位置のぼかし画像の画素値であり、Δは、閾値であって、正の定数である。
【0127】
また、本発明の画像処理装置において、中間ぼかし画像生成部は、高ビット深度画像に対して、下式に基づいて各画素値mが求められるレイヤマスクとぼかし画像を重ねることによって、中間ぼかし画像を生成することができる。
ただし、aは、画素値cと同じ画素位置の高ビット深度画像の画素値であり、bは、画素値cと同じ画素位置のぼかし画像の画素値であり、Δ
1およびΔ
2は、閾値であって、正の定数であり、f(b-a)は、f(Δ
1)=b,f(Δ
2)=a,|b-a|∈[Δ
1,Δ
2]を満たす単調関数である。