JP3059287B2 - 2値画像変倍装置 - Google Patents

2値画像変倍装置

Info

Publication number
JP3059287B2
JP3059287B2 JP4028062A JP2806292A JP3059287B2 JP 3059287 B2 JP3059287 B2 JP 3059287B2 JP 4028062 A JP4028062 A JP 4028062A JP 2806292 A JP2806292 A JP 2806292A JP 3059287 B2 JP3059287 B2 JP 3059287B2
Authority
JP
Japan
Prior art keywords
coefficient
pixel
array
coefficients
original
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP4028062A
Other languages
English (en)
Other versions
JPH05227413A (ja
Inventor
青木  伸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP4028062A priority Critical patent/JP3059287B2/ja
Publication of JPH05227413A publication Critical patent/JPH05227413A/ja
Application granted granted Critical
Publication of JP3059287B2 publication Critical patent/JP3059287B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、2値化された画像デー
タに対して変倍処理を行う2値画像変倍装置に関する。
【0002】
【従来の技術】一般的に、ディジタル画像を任意の倍率
で変倍するためには、原画像の格子点以外の位置の画像
濃度値を推定することが必要となる。そのため、従来か
ら変換画素の原画像上での対応位置(非格子点位置)の
濃度値を求めるために、該位置の近傍の原画素数個の濃
度値を線形補間する方法がある。
【0003】すなわち、この方法(特開昭64−517
65号公報)は、図17に示すように、変換画素P
(k,l)を含む4つの原画素で囲まれる領域をA
(0,0)からA(3,3)の小領域に分割する。そし
て、小領域毎に予め計算され、記憶された重みWx,W
yと4つの原画素濃度値R(i,j),R(i+1,
j),R(i,j+1),R(i+1,j+1)を用い
て、次式のように変換画素値を求める。 P=(1−Wy)((1−Wx)R(i,j)+WxR
(i+1,j))+Wy((1−Wx)R(i,j+
1)+WxR(i+1,j+1)) 上記式から明らかなように、従来の線形補間法では、1
つの変換画素値を求めるために、数回の乗算を必要とす
る。
【0004】また、上記した乗算を行うことなく、変倍
画像を得る方法としては、変換画素に影響を与える原画
素の全ての画素値および変換画素の相対位置をアドレス
情報とするROMテーブルを用意し、該テーブルを参照
することによって変換画素値を得るようにした画像拡大
縮小装置がある(特公昭58−53781号公報)。
【0005】さらに、変倍の前にローパスフィルタリン
グ処理を行うことによって、擬似中間調のモアレを除去
した擬似中間調画像処理装置が提案されている(特開昭
62−139473号公報)。
【0006】
【発明が解決しようとする課題】上記した従来技術によ
って、モアレの原因の一つである折り返し歪を防止する
ためのローパスフィルタリング処理と、変倍画像を得る
ための補間処理を同時に実現しようとする場合、前述し
た第1、第3の公知技術によると、ローパスフィルタの
出力をラインバッファに保存し、次いで補間を実行する
ことになるため、多値のラインバッファと乗算器が必要
となり、ハードウェア構成が複雑になるという問題があ
る。
【0007】また、第2の公知技術では、ローパスフィ
ルタの機能を実現するために、単なる補間よりもはるか
に多数の原画素を参照するためのROMテーブルが必要
になり、このため回路構成が非常に大規模になるという
問題がある。
【0008】本発明の目的は、2値画像に対するローパ
スフィルタリング処理と補間処理を小規模な回路構成に
よって同時に実現する2値画像変倍装置を提供すること
にある。
【0009】
【課題を解決するための手段】前記目的を達成するため
に、請求項1記載の発明では、2値化された原画像デー
タに対して変倍処理を行う2値画像変倍装置において、
変換画素位置および変倍率を基に、前記変換画素位置を
原画像上に写像したとき、参照する原画素(以下、参照
原画素)の絶対位置と前記変換画素の相対位置を算出す
る手段と、第1の特性をもつ複数の係数の配列(以下、
第1の係数セット)を記憶した第1の記憶手段と、第2
の特性をもつ複数の係数の配列(以下、第2の係数セッ
ト)を記憶した第2の記憶手段と、前記変倍率に応じて
前記第1または第2の係数セットを選択する手段と、前
記算出された相対位置に応じて、前記選択された係数セ
ットから一つの係数の配列を選択し、該選択された係数
の配列のうち、前記原画像中の前記参照原画素近傍の特
定色画素に対応する係数を加算し、変換画素値を生成す
る手段を備えたことを特徴としている。
【0010】請求項2記載の発明では、2値化された原
画像データに対して変倍処理を行う 2値画像変倍装置に
おいて、変換画素位置および変倍率を基に、前記変換画
素位置を原画像上に写像したとき、参照する原画素(以
下、参照原画素)の絶対位置と前記変換画素の相対位置
を算出する手段と、第1の特性をもつ複数の係数の配列
(以下、第1の係数セット)を記憶した第1の記憶手段
と、第2の特性をもつ複数の係数の配列(以下、第2の
係数セット)を記憶した第2の記憶手段と、前記原画像
の特徴量に応じて前記第1または第2の係数セットを選
択する手段と、前記算出された相対位置に応じて、前記
選択された係数セットから一つの係数の配列を選択し、
該選択された係数の配列のうち、前記原画像中の前記参
照原画素近傍の特定色画素に対応する係数を加算し、変
換画素値を生成する手段を備えたことを特徴としてい
る。
【0011】
【作用】座標演算部は、変換画素の位置と変倍率から、
原画像上での対応位置の絶対座標と相対座標を算出す
る。係数記憶部には、変換画素値を計算するための係数
が予め記憶され、係数選択加算部は、係数記憶部に記憶
された係数セットの中から相対座標値に対応する係数マ
スクを選択し、選択されたマスクの内、黒の入力2値画
像に対応する係数をすべて加算して変換画素値を算出す
る。また、他の実施例では、変倍率、原画像の特徴量に
応じて、係数セットを切り換える。これにより、フィル
タリング処理と補間処理が一度に処理され、高品質な変
倍画像を得ることができる。
【0012】
【実施例】以下、本発明の一実施例を図面を用いて具体
的に説明する。まず、本発明の原理について説明する。
本発明では、ローパスフィルタとして、図7に示すマス
クを用いたフィルタリング処理を考える。すなわち、フ
ィルタ出力F(k,l)を求めるために、入力2値画像
I(n,m)(k−1≦n≦k+1,l−1≦m≦l+
1)に対して次式の処理を行う。
【0013】
【数1】
【0014】このフィルタリング処理は、図15に示す
ように、フィルタ出力F(k,l)を得るために、入力
画像中の注目画素位置(k,l)を中心とした3×3画
素(横方向にk−1からk+1、縦方向にl−1からl
+1)について、重みマスクを用いた加重和(この場
合、重みは全て1であるので、加重和は単なる加算とな
る)をとるもので、次いでその右隣のフィルタ出力画素
は、入力画像上で1画素分ずれた位置の3×3画素(横
方向にkからk+2、縦方向にl−1からl+1)の加
重和をとり、入力画像中の各画素について同様の処理を
繰り返すことにより、フィルタリング処理された出力画
像が得られる。
【0015】次いで、フィルタ出力画素を線形補間する
ことにより、変換画素の画素値が求められる。すなわ
ち、図16の線形補間において、変換画素Q(i,j)
の画素値は、変換画素を取り囲む4つのフィルタ出力画
素F(k,l),F(k+1,l),F(k,l+
1),F(k+1,l+1)と、相対位置Δx,Δy
(変換画素位置を原画像上に写像したときの位置)とか
ら、 Q(i,j)=((1−Δx)(1−Δy))F(k,l)+(Δx(1− Δy))F(k+1,l)+((1−Δx)Δy)F(k,l+1) +(ΔxΔy)F(k+1,l+1) 式(2) となる。
【0016】ここで、原画像の格子間隔を1とし、また
変倍率をmagとする。従って、原画像上に写像した変
換画像の格子間隔は、1/magとなる。そして、式
(2)のi,j,Δx,Δyは、 k=〔i/mag〕 式(3) l=〔j/mag〕 式(4) Δx=i/mag−k 式(5) Δy=j/mag−l 式(6) となる。ただし、〔 〕は、ガウスの階段関数である。
【0017】本発明は、上記した式(1)と式(2)の
二つの処理を一度の加重和で実行するものである。すな
わち、式(2)を、式(1)を用いて書き直すと、
【0018】
【数2】 となる。
【0019】これは、I(n,m)(k−1≦n≦k+
2,l−1≦m≦l+2)についての加重和の形になっ
ているので、I(n,m)について整理すると、次のよ
うになる。 ただし、(1−Δx)(1−Δy)=A Δx(1−Δy)=B (1−Δx)Δy=C ΔxΔy=D とする。
【0020】 Q(i,j)=AI(k−1,l−1) +(A+B)I(k,l−1) +(A+B)I(k+1,l−1) +BI(k+2,l−1) +(A+C)I(k−1,l) +(A+B+C+D)I(k,l) +(A+B+C+D)I(k+1,l) +(B+D)I(k+2,l) +(A+C)I(k−1,l+1) +(A+B+C+D)I(k,l+1) +(A+B+C+D)I(k+1,l+1) +(B+D)I(k+2,l+1) +CI(k−1,l+2) +(C+D)I(k,l+2) +(C+D)I(k+1,l+2) +DI(k+2,l+2) 式(8)
【0021】
【数3】 となる。
【0022】すなわち、変換画素Q(i,j)の画素値
は、合計16個の原画素I(p,q)(k−1≦p≦k
+2,l−1≦q≦l+2)を参照し、式(8)のA,
B,C,Dからなる係数16個{式(9)のw(n,
m)(Δx,Δy)}を加算すればよい。
【0023】さらに、入力画素I(n,m)が0または
1の値をとるとすると、 wI(n,m)=w(for I(n,m)=1) =0(for I(n,m)=0) 式(10) であるので、予めw(n,m)(Δx,Δy)を計算し
ておくことによって、
【数4】 となり、加算のみで変換画素値を求めることができる。
【0024】〈実施例1〉 図1は、本実施例の変倍装置のブロック構成図である。
座標演算部1は、変換画素の位置(i,j)と変倍率
(mag)から、原画像上での対応位置の絶対座標
(k,l)および相対座標(Δx,Δy)、つまり変換
画素位置を原画像上に写像したときの位置を算出する手
段である。絶対座標は、参照原画素(I(k,l),I
(k+1,l),I(k,l+1),I(k+1,l+
1))を決定するため、相対座標は補間の重みを決定す
るためにそれぞれ使用される。
【0025】本実施例では、相対座標(Δx,Δy)と
して、図2に示すように、原画像格子間隔の1/4を単
位として、0から3までの4段階(Δx=0,Δy=0
からΔx=3,Δy=3まで)とする。
【0026】入力バッファ2は、入力画像データの内、
後述する係数選択加算部3で参照される4ライン分(つ
まり、座標演算部1で算出されたl−1ライン目からl
+2ライン目まで)の画像データを保存するメモリであ
る。
【0027】係数記憶部4は、式(9)によって、変換
画素値を計算するための係数を予め記憶する手段であ
る。本実施例では、相対座標値Δx,Δyを2ビットと
しているので、4×4画素サイズの係数マスク(係数の
配列)として、4×4=16種類用意する。図3は、Δ
x,Δyに対応する16種類の係数マスクのセットを示
す。
【0028】係数選択加算部3は、式(9)に従って、
係数記憶部4に記憶された係数セットの中から相対座標
値Δx,Δyに対応する係数マスクを選択し、その選択
されたマスクの内、入力バッファ2内の参照入力画像
(つまり、I(k−1,l−1)からI(k+2,l+
2)の4×4画素)の黒画素に対応する係数をすべて加
算することにより、変換画素値を計算する。
【0029】例えば、図3の係数マスクが係数記憶部4
に記憶され、相対座標値がΔx=1,Δy=1で、入力
2値画像の参照4×4画素が図4に示すような場合、ま
ず、マスクセットからΔx=1,Δy=1に対応するマ
スクが選択され(図5)、次いで、係数選択加算部3に
おいて、入力2値画像の参照4×4画素の内、黒画素に
対応する位置の係数だけが取り出され(図6)、これら
を加算した画素値70が変換画素値となる。
【0030】このように、本発明では、参照テーブル
(係数記憶部4に記憶された係数セット)と加算器によ
って、フィルタリング処理と補間処理を同時に実現する
ことができる。さらに、このようなフィルタリング処理
と補間処理の特性は、参照テーブルの内容によって決ま
るので、本発明の変倍処理の特性は、上記した参照テー
ブルによるものに限らず、参照テーブルを書き換えるこ
とによって様々な異なる特性を持たせることが可能とな
る。例えば、図7のフィルタの代わりに、図8のフィル
タを用いることで、透過帯域を広くすることができる。
この場合、前記した式(9)から係数マスクセットとし
ては、図9に示すものを用いる。
【0031】本実施例によれば、係数記憶部の係数は、
ローパスフィルタリング処理と、補間処理を同時に実行
するための係数であるので、折り返し歪のない高品質な
変倍処理を行うことが可能となる。
【0032】また、本実施例では、例えば、式(2)の
代わりに次のような補間を行うこともできる。 Q(i,j)=F(k,l)(for Δx<1/2,Δy<1/2) =F(k,l+1)(for Δx<1/2,Δy≧1/2) =F(k+1,l)(for Δx≧1/2,Δy<1/2) =F(k+1,l+1)(for Δx≧1/2,Δy≧1/2) これは、いわゆる間引きに相当し、この場合の係数マス
クセットは、図10に示すようになる。
【0033】〈実施例2〉 本発明で用いられるローパスフィルタは、折り返し歪を
防止する目的で設けられている。そこで、本実施例2で
は、変倍率によって、その透過帯域を変更するように構
成している。すなわち、図11に示すように、予め2つ
のフィルタを使った2組の係数セットを係数記憶部1、
2に設定しておき、変倍率に応じて、係数記憶部1、2
の何れかの係数セットを選択する。
【0034】例えば、変倍率が100%未満で90%以
上の場合には、図8のフィルタを用い、90%未満の倍
率の場合には、図7のフィルタを用いるようにする。そ
のために、図3、図9の2組の係数セットをそれぞれ係
数記憶部1、2に予め設定しておき、変倍率に応じて使
用する係数セットを選択する。
【0035】〈実施例3〉 ローパスフィルタは、擬似階調画像の折り返し歪を低減
するために必要であるが、他方、文字などの細線を主体
とした画像に対しては、ローパスフィルタによって平滑
化処理が施されるためにボケなどの画質劣化の原因にも
なる。そこで、本実施例3では、このような画質の劣化
を低減するために、原画像の特徴量によって、フィルタ
リング特性を変更するように構成している。
【0036】図12は、実施例3のブロック構成図であ
り、実施例2の構成にさらに、テンプレートとパターン
マッチ回路を付加したものである。テンプレートとして
は、図13に示すようなエッジ検出用のパターンを用
い、入力2値画像に対して、図13のテンプレートとの
パターンマッチングをとる。マッチングした画素は原画
像のエッジと判定されるので、その画素については透過
帯域の広いフィルタリング処理を行うようにする。
【0037】すなわち、パターンマッチ回路でマッチン
グしたか否かという、原画像の特徴量を用いて、フィル
タを切り換える。例えば、予め係数セットとして、図
3、図9の2組を用意して、係数記憶部1、2に設定し
ておく。そして、入力バッファ内の入力画像I(k−
1,l−1)からI(k+2,l+2)の4×4画素
と、図13のテンプレートとのマッチングをとり、一つ
でもマッチングした場合には、係数選択加算部は図9の
係数セットを使用するように選択し、それ以外の場合に
は、図3の係数セットを使用するように選択する。な
お、この他に例えばキー入力部に文字モードボタンを設
け、利用者によるキー入力の指定情報を用いるようにし
てもよい。
【0038】〈実施例4〉 上記した実施例では、2値画像を入力して、多値の変倍
画像Q(i,j)を出力しているが、本実施例では、こ
の多値変倍画像を再び2値化して2値画像を得ることに
より、2値から2値への変倍処理装置が構成される。図
14は、実施例4のブロック構成図であり、この実施例
では、多値の変倍画像を2値化する方法として、誤差拡
散法を用いている。このように本実施例によれば、小規
模なハードウェア構成によって、2値化された画像に対
する高品質な変倍2値画像を得ることができる。
【0039】
【発明の効果】以上、説明したように、請求項1記載の
発明によれば、記憶手段に格納する係数によって種々の
特性を有する変倍処理装置を得ることができるととも
に、変倍率に応じて特性の異なる係数セットを選択して
いるので、倍率に最適なフィルタ特性を得ることができ
る。
【0040】請求項記載の発明によれば、原画像の特
徴量に応じて特性の異なる係数セットを選択しているの
で、原画像に最適なフィルタ特性を得ることができ、特
に文字エッジの画質劣化を抑えることが可能となる。
【図面の簡単な説明】
【図1】本発明の実施例のブロック構成図である。
【図2】相対座標を示す図である。
【図3】係数マスクセットを示す図である。
【図4】入力2値画像の参照画素の例を示す図である。
【図5】Δx=1,Δy=1のマスクを示す図である。
【図6】黒画素に対応する位置の係数を取りだした図で
ある。
【図7】ローパスフィルタマスクの例を示す図である。
【図8】ローパスフィルタマスクの他の例を示す図であ
る。
【図9】他の係数マスクセットを示す図である。
【図10】更に他の係数マスクセットを示す図である。
【図11】本発明の実施例2の構成を示す図である。
【図12】本発明の実施例3の構成を示す図である。
【図13】エッジ検出のためのテンプレートを示す図で
ある。
【図14】本発明の実施例4の構成を示す図である。
【図15】フィルタリング処理を説明する図である。
【図16】線形補間を説明する図である。
【図17】従来技術を説明する図である。
【符号の説明】
1 座標演算部 2 入力バッファ 3 係数選択加算部 4 係数記憶部
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H04N 1/38 - 1/393 G06T 3/00 - 5/50 G09G 5/00 - 5/42

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 2値化された原画像データに対して変倍
    処理を行う2値画像変倍装置において、変換画素位置お
    よび変倍率を基に、前記変換画素位置を原画像上に写像
    したとき、参照する原画素(以下、参照原画素)の絶対
    位置と前記変換画素の相対位置を算出する手段と、第1
    の特性をもつ複数の係数の配列(以下、第1の係数セッ
    ト)を記憶した第1の記憶手段と、第2の特性をもつ複
    数の係数の配列(以下、第2の係数セット)を記憶した
    第2の記憶手段と、前記変倍率に応じて前記第1または
    第2の係数セットを選択する手段と、前記算出された相
    対位置に応じて、前記選択された係数セットから一つの
    係数の配列を選択し、該選択された係数の配列のうち、
    前記原画像中の前記参照原画素近傍の特定色画素に対応
    する係数を加算し、変換画素値を生成する手段を備えた
    ことを特徴とする2値画像変倍装置。
  2. 【請求項2】 2値化された原画像データに対して変倍
    処理を行う2値画像変倍装置において、変換画素位置お
    よび変倍率を基に、前記変換画素位置を原画像上に写像
    したとき、参照する原画素(以下、参照原画素)の絶対
    位置と前記変換画素の相対位置を算出する手段と、第1
    の特性をもつ複数の係数の配列(以下、第1の係数セッ
    ト)を記憶した第1の記憶手段と、第2の特性をもつ複
    数の係数の配列(以下、第2の係数セット)を記憶した
    第2の記憶手段と、前記原画像の特徴量に応じて前記第
    1または第2の係数セットを選択する手段と、前記算出
    された相対位置に応じて、前記選択された係数セットか
    ら一つの係数の配列を選択し、該選択された係数の配列
    のうち、前記原画像中の前記参照原画素近傍の特定色画
    素に対応する係数を加算し、変換画素値を生成する手段
    を備えたことを特徴とする2値画像変倍装置。
JP4028062A 1992-02-14 1992-02-14 2値画像変倍装置 Expired - Fee Related JP3059287B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4028062A JP3059287B2 (ja) 1992-02-14 1992-02-14 2値画像変倍装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4028062A JP3059287B2 (ja) 1992-02-14 1992-02-14 2値画像変倍装置

Publications (2)

Publication Number Publication Date
JPH05227413A JPH05227413A (ja) 1993-09-03
JP3059287B2 true JP3059287B2 (ja) 2000-07-04

Family

ID=12238278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4028062A Expired - Fee Related JP3059287B2 (ja) 1992-02-14 1992-02-14 2値画像変倍装置

Country Status (1)

Country Link
JP (1) JP3059287B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11298727A (ja) * 1998-02-16 1999-10-29 Sumitomo Metal Ind Ltd デジタル画像の拡大縮小方法及び回路
JP5541347B2 (ja) * 2012-11-19 2014-07-09 セイコーエプソン株式会社 画像表示装置、および画像表示装置の制御方法
JP6167698B2 (ja) * 2013-07-03 2017-07-26 コニカミノルタ株式会社 画像形成装置及び位置ずれ補正方法

Also Published As

Publication number Publication date
JPH05227413A (ja) 1993-09-03

Similar Documents

Publication Publication Date Title
JP3143209B2 (ja) 画像変倍装置
EP1347410B1 (en) Edge-based enlargement and interpolation of images
USRE47274E1 (en) Filtering control method for improving image quality of bi-linear interpolated image
US7149369B2 (en) Method and system for image scaling
JP3210248B2 (ja) 画像処理装置及びその方法
EP0874330A2 (en) Area based interpolation for image enhancement
JP2004040790A (ja) 画像信号のデ・スクリーン方法及びシステム
EP0505113B1 (en) Image processing apparatus
EP1056045A2 (en) Method and apparatus for adaptive scaling of a digital image
US6289136B1 (en) Image processing method and apparatus
JP3026706B2 (ja) 画像処理装置
JP3059287B2 (ja) 2値画像変倍装置
JPH06309452A (ja) 解像度変換処理装置
US7480071B2 (en) Maximizing performance in a hardware image scaling module
JP3092769B2 (ja) 画像処理装置
US6961480B2 (en) Off-grid interpolation in image processing
JP2920635B2 (ja) 画像処理装置
US20040201863A1 (en) Enhanced scaling range for standalone all-in-one devices
JP3462957B2 (ja) 画像処理方法
JPH07107268A (ja) 画像処理装置
JP3054338B2 (ja) 画像処理装置およびその方法
JPH06113120A (ja) 画像処理装置の解像度変換装置
JP2001043357A (ja) 画像処理方法、画像処理装置及び記録媒体
JP3972625B2 (ja) 画像処理装置および画像処理方法
JP3703253B2 (ja) 画像処理装置及び方法及び記憶媒体

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees