[go: up one dir, main page]

JP4974619B2 - 画像データ処理装置、画像データ処理方法、プログラム及び記録媒体 - Google Patents

画像データ処理装置、画像データ処理方法、プログラム及び記録媒体 Download PDF

Info

Publication number
JP4974619B2
JP4974619B2 JP2006240793A JP2006240793A JP4974619B2 JP 4974619 B2 JP4974619 B2 JP 4974619B2 JP 2006240793 A JP2006240793 A JP 2006240793A JP 2006240793 A JP2006240793 A JP 2006240793A JP 4974619 B2 JP4974619 B2 JP 4974619B2
Authority
JP
Japan
Prior art keywords
image data
storage
storage means
capacity
storing
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
JP2006240793A
Other languages
English (en)
Other versions
JP2007159094A5 (ja
JP2007159094A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2006240793A priority Critical patent/JP4974619B2/ja
Priority to US11/557,742 priority patent/US8184327B2/en
Publication of JP2007159094A publication Critical patent/JP2007159094A/ja
Publication of JP2007159094A5 publication Critical patent/JP2007159094A5/ja
Priority to US13/439,744 priority patent/US8456687B2/en
Application granted granted Critical
Publication of JP4974619B2 publication Critical patent/JP4974619B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3877Image rotation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • G06T3/602Rotation of whole images or parts thereof by block rotation, e.g. by recursive reversal or rotation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Description

本発明は、表示画像を回転させる画像データ処理を行う画像データ処理装置、画像データ処理方法、プログラム及び記録媒体に関する。
従来、表示画像の回転処理を行う画像データ処理装置には、回転前の表示画像の画像データを1ページ分格納するページメモリと、回転処理後の表示画像の画像データを1ページ分格納するページメモリとをそれぞれ用意する必要があった。しかし、表示画像の高解像度化等により画像データのデータ量が大幅に増えてきており、表示画像の回転処理には、膨大な記憶容量のページメモリが必要となっていた。しかもそのページメモリが2表示画面分の画像データを格納する記憶容量が必要となるため、コストの大幅な上昇を招くことになっていた。その対策として、次のような画像データに画像回転処理を施す画像データ処理方法が提案されている。すなわち、JPEG圧縮符号化した画像データにJPEGの制御コードであるリスタートマーカを付加し、所定幅のストライプ単位で圧縮画像データを復号する。これにより、復号した画像データを格納するのに必要なバッファメモリの記憶容量を削減する方法が提案されている。
また、表示画像の回転処理が可能な画像データ処理装置において、入力された画像データをバンド分割し、バンド分割された画像データについて回転角度に応じて読み出し順序を変え、バンド単位で圧縮処理を行うことが提案されている。これにより、画像データの伸長処理時に圧縮コードの読み飛ばし処理を行う必要がなくなるため、リアルタイムでの伸長処理が可能となる。
しかしながら、従来のデジタルカメラ等の画像データ処理装置では、JPEG圧縮方式で圧縮されて記録された原画像データを伸長し、伸長された画像データを回転し、そして回転された画像データを記録する機能については提案がなされていなかった。
特開平09−247423号公報 特開2003−092674号公報
特許文献1に開示されている画像データ処理装置及びその方法では、所定幅のストライプ単位で圧縮画像データを符号化する。そのため、一般的なJPEG圧縮画像データの構成とは異なり、ストライプ単位で再生可能なプレーヤが必要となる。したがって、一般的なデジタルカメラ等では再生出来ない等の問題がある。
同様に、特許文献2に開示されている画像データ処理装置及び画像データ処理方法では、画像データの伸長処理に際して、バッファメモリから圧縮画像データをバンド単位でDMAインターフェースの制御により読み出す。そして選択的に切り替えながら伸長処理部に供給し、順次伸長処理を行なうものである。そのため、伸長処理を行うには、圧縮データを総てバッファメモリに展開する必要があった。さらに、また所定幅のストライプ単位で圧縮画像データを符号化する必要があった。そのため、一般的なJPEG圧縮画像データの構成とは異なり、ストライプ単位で再生可能なプレーヤが必要となっていた。したがって、やはり一般的なデジタルカメラ等では再生出来ない等の問題もあった。
本発明は、画像データを格納するバッファメモリの記憶容量を削減することを目的とする。また、本発明は、バッファメモリの記憶容量を削減して画像の回転処理を行い、画像データのフォーマット互換性を維持して一般的な再生プレーヤ及びデジタルカメラ等で再生可能とすることを目的とする。
本発明の実施形態によれば、圧縮された画像データを記憶する第1記憶手段と、
伸長され回転された前記画像データの一部を記憶する第2記憶手段と、
伸長され回転され再度圧縮された前記画像データの全体を記憶する第3記憶手段と、
を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置であって、
前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮された画像データを記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定手段と、
前記第1記憶手段に記憶された画像データを伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記画像データの分割数を決定する分割数決定手段と、
前記第1記憶手段から読み出される前記画像データを伸長し、当該伸長した画像データを前記分割数に分割して得られる分割領域画像データの1つを出力して残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長手段と
前記伸長手段から出力される前記分割領域画像データに順次回転処理を行って前記第2記憶手段に記憶する回転手段と
前記第2記憶手段から読み出される前記分割領域画像データを圧縮して前記第3記憶手段に記憶する圧縮手段と
備え
前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理装置を提供する。
本発明の他の実施形態によれば、圧縮された画像データを記憶する第1記憶手段と、
伸長され回転された前記画像データの一部を記憶する第2記憶手段と、
伸長され回転され再度圧縮された前記画像データの全体を記憶する第3記憶手段と、
を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置における画像データ処理方法であって、
記憶容量決定手段が、前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮された画像データを記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定工程と、
分割数決定手段が、前記第1記憶手段に記憶された画像データを伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記画像データの分割数を決定する分割数決定工程と、
伸長手段が、第1記憶手段から読み出される圧縮された画像データを伸長し、当該伸長した画像データを前記分割数に分割して得られる分割領域画像データの1つを出力して残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長工程と
回転手段が、前記伸長手段から出力される前記分割領域画像データに順次回転処理を行って前記第2記憶手段に記憶する回転工程と
圧縮手段が、前記第2記憶手段から読み出される前記分割領域画像データを圧縮して前記第3記憶手段に記憶する圧縮工程と
備え
前記伸長工程において前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理方法を提供する。
本発明の、更に他の実施形態によれば、ブロック単位で圧縮された画像データを記憶する第1記憶手段と、
伸長され回転された前記画像データの一部を記憶する第2記憶手段と、
伸長され回転され再度圧縮された前記画像データの全体を記憶する第3記憶手段と、
を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置であって、
前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮された画像データを記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定手段と、
前記第1記憶手段に記憶された画像データを伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記画像データの分割数を決定する分割数決定手段と、
前記第1記憶手段から読み出される前記画像データを前記ブロック単位で伸長し、当該伸長した画像データを前記ブロック単位の整数倍で前記分割数に分割して得られる分割領域画像データの1つを出力して残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長手段と
前記伸長手段から出力される前記分割領域画像データに前記ブロック単位の整数倍で順次回転処理を行って前記第2記憶手段に記憶する回転手段と
前記第2記憶手段から読み出される前記分割領域画像データを圧縮して前記第3記憶手段に記憶する圧縮手段と
備え
前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理装置を提供する。
本発明の、更に他の実施形態によれば、ブロック単位で圧縮された画像データを記憶する第1記憶手段と、
伸長され回転された前記画像データの一部を記憶する第2記憶手段と、
伸長され回転され再度圧縮された前記画像データの全体を記憶する第3記憶手段と、
を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置であって、
前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮された画像データを記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定手段と、
前記第1記憶手段に記憶された画像データを伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記画像データの分割数を決定する分割数決定手段と、
前記第1記憶手段から読み出される前記画像データを前記ブロック単位で伸長し、当該伸長した画像データを前記ブロック単位の整数倍で前記分割数に分割して得られる分割領域画像データの1つをトリミングして残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長手段と
前記伸長手段から出力される前記分割領域画像データに前記ブロック単位の整数倍で順次回転処理を行って前記第2記憶手段に記憶する回転手段と
前記第2記憶手段から読み出される前記分割領域画像データを圧縮して前記第3記憶手段に記憶する圧縮手段と
備え
前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理装置を提供する。
本発明の、更に他の実施形態によれば、ブロック単位で圧縮された画像データを記憶する第1記憶手段と、
前記画像データのトリミングするトリミング領域を指示するトリミング指示手段と、
伸長され回転された前記トリミング領域の一部を記憶する第2記憶手段と、
伸長され回転され再度圧縮された前記トリミング領域の全体を記憶する第3記憶手段と、
を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置であって、
前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮されたトリミング領域を記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定手段と、
前記第1記憶手段に記憶された画像データのうち前記トリミング領域を含む前記ブロック単位の整数倍の領域を伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記トリミング領域の分割数を決定する分割数決定手段と、
前記第1記憶手段から読み出される前記画像データを前記ブロック単位で伸長し、当該伸長した画像データのうち前記トリミング領域を含む前記ブロック単位の整数倍の領域を前記ブロック単位の整数倍で前記分割数に分割して得られる分割領域画像データの1つを出力して残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長手段と
前記伸長手段から出力される前記分割領域画像データに前記ブロック単位の整数倍で順次回転処理を行って前記第2記憶手段に記憶する回転手段と
前記第2の記憶手段に記憶された前記分割領域画像データを、前記トリミング領域でトリミングして読み出すトリミング手段と、
記トリミング手段でトリミングされた前記トリミング領域の画像データを圧縮して前記第3記憶手段に記憶する圧縮手段と
備え
前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理装置を提供する。
本発明の、更に他の実施形態によれば、前記の実施形態における画像データ処理方法の各工程をコンピュータ実行させるためのプログラムを提供する。
本発明の、更に他の実施形態によれば、前記のプログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
本発明によれば、画像データに回転処理を施す画像回転処理において、画像データを格納するバッファメモリの記憶容量を削減することが可能となる。また画像データのフォーマット互換性を維持し、一般的な再生プレーヤ及びデジタルカメラ等で再生が可能となる。
<実施形態1>
まず、本発明の第1の実施形態を図1乃至図9を使用して説明する。
図1は、本発明の実施形態1に係る画像データ処理装置としての撮像装置のシステム構成を示す模式的ブロック図である。同図において、100はCPU(Central Processing Unit):中央処理装置)であって、図1に示す撮像装置のシステム全体を制御する。
101はシステムバスであり、CPU100はシステムバス101を介して、各回路ブロックを制御する。CPU100は、ROM(Read Only Memory)102に格納されている本願の実施形態を実現させるプログラムに従って、RAM(Random Access Memory)103の一部をワークエリアとして動作する。また、104は撮像部であり、よく知られているように、固体撮像素子や、絞り、シャッタ機構などが取り付けられたレンズ系などを含む。また、105は表示部であり、通常LCD(Liquid Crystal Display)表示装置などが使用される。表示部105は、撮影前の被写体のモニタや、撮影後の画像データの再生のモニタ等の為に用いられる。また、106は半導体記憶素子が内蔵された着脱可能なメモリカード等の記録媒体である。この記録媒体106は、半導体記憶素子に限られるものではなく、他の記録媒体も使用できる。記録媒体106から読出し回路107を介して読み出されたJPEG(Joint Photographic Expert Group)等で圧縮符号化された画像データの一部又は全部は、一時的に第1バッファメモリ108に格納される。第1バッファメモリ108は、一般的に使われるDRAM(Dynamic Random Access Memory)で構成される。
また、第1バッファメモリ制御回路109は、第1バッファメモリ108に読み出されたJPEG圧縮画像データを順次伸長回路110にDMA転送するダイレクトメモリアクセスコントローラ(以下DMAC)で構成される。そして、伸長回路110でJPEG等で圧縮符号化された画像データを伸長することで画像データを復元する。
111はトリミング回路であって、伸長回路110で伸長された画像データから一部の矩形領域又は全ての画像データを切り出して出力する。
また、第1の第2バッファメモリ制御回路112は、前記のトリミング回路111で切り出された画像データを第2バッファメモリ113にDMA転送するためのDMACである。さらに、第2バッファメモリ113を制御する第2の第2バッファメモリ制御回路114が設けられる。そして、第2バッファメモリ113に格納されている画像データを圧縮回路115にDMA転送するため、第2の第2バッファメモリ制御回路114もまたDMACで構成されている。
圧縮回路115は、第2バッファメモリ113から読み出される画像データを、JPEG等のブロック符号化処理により圧縮符号化をするための回路である。さらに117は、圧縮回路115で圧縮符号化されたJPEG圧縮画像データの一部または全部を格納する第3バッファメモリである。第3バッファメモリ117は第3バッファメモリ制御回路116により制御される。第3バッファメモリ117から出力される圧縮画像データは、書込み回路118を介して記録媒体106に書き込まれる。
尚、第1バッファメモリ108、第2バッファメモリ113及び第3バッファメモリ117は、RAM103の中に割り付けることも可能である。もちろん、別にRAMを設け、そのRAMの中に第1バッファメモリ108、第2バッファメモリ113及び第3バッファメモリ117を割り付けることも可能である。
図2は、JPEG圧縮画像データを90度時計方向に回転する場合について説明するための図である。図2(a)〜図2(l)は、それぞれ表示画像の伸長処理、回転処理及び圧縮処理の遷移状態を示す。
まず、図2(a)は第1バッファメモリに取り込んだJPEG圧縮画像データ201を示す。また、図2(b)は、第1回目のJPEG圧縮画像データの伸長処理として、図2(a)に示すJPEG圧縮画像データの左側に位置する矩形領域(1)の画像データ202を選択し、伸長し、出力してトリミングするまでの処理を示す。また、図2(c)は、矩形領域(1)の画像データ202を90度回転する処理を示し、画像データ203が得られる。この画像データ203を順次第2バッファメモリ113に蓄積する。
図2(d)は90度回転された矩形領域(1)の画像データ203に対して圧縮処理し、第3バッファメモリ117に格納される矩形領域(1)の画像データ204のイメージを示している。以上のようにして、図2(a)の左側に位置する矩形領域の画像データ(1)が回転処理される。
次に、図2(e)〜(h)は、図2(a)〜(d)と同様に、第2回目のJPEG圧縮画像データ211の処理状態を示す。この場合には、図2(a)の画像データの真中に位置する矩形領域(2)の画像データを選択して同じ処理が行われる。この処理においても、画像データ212、213が順次得られ、第3バッファメモリ117に格納される矩形領域(1)の画像データ204に隣接して蓄積される画像データ214のイメージを示している。
最後に、図2(i)〜(l)は、図2(a)〜(d)と同様に第3回目のJPEG圧縮画像データの処理状態を示す。この場合には、図2(a)の画像データの右側に位置する矩形領域(3)の画像データを選択して同じ処理が行われる。この処理においても、画像データ222、223が順次得られ、最終的に画像データ204、214に隣接して蓄積される画像データ224のイメージを示している。このようにして、第1バッファメモリ108に蓄積されている図2(a)に示す圧縮画像データが回転処理され、図2(l)に示すように回転した状態で第3バッファメモリ117に格納されることになる。
一方、図3は、JPEG圧縮画像データを時計方向に270度回転する場合について説明するための図である。図3(a)〜(l)は、表示画像の伸長処理、回転処理及び圧縮処理の状態を示す。
まず、図3(b)は伸長された画像データの右側に位置する矩形領域(3)の画像データを選択して出力するトリミング処理を示す。また、図3(c)は矩形領域(3)の画像データの270度回転の処理を示し、図3(d)は270度回転された矩形領域(3)の画像データに対して圧縮処理した矩形領域(3)の画像データのイメージを示している。図2の場合と同様に、画像データ301から、302、303と変形され、最終的に、図3(a)の右側に位置する矩形領域(3)の画像データが画像データ304として回転処理される。
次に、図3(e)〜(h)は、図3(a)〜(d)と同様に、第2回目のJPEG圧縮画像データの処理状態を示す。この場合には、図3(a)の画像データの真中に位置する矩形領域(2)の画像データを選択して処理が行われる。この場合と同様に、画像データ311から、312、313と変形され、最終的に、図3(a)の右側に位置する矩形領域(3)の画像データが画像データ314として回転処理される。
最後に、図3(i)〜(l)は、図3(a)〜(d)と同様に第3回目のJPEG圧縮画像データの処理状態を示す。この場合には、図3(a)の画像データの左側に位置する矩形領域(1)の画像データを選択して処理が行われる。この場合と同様に、画像データ321から、322、323と変形され、最終的に、図3(a)の右側に位置する矩形領域(3)の画像データが画像データ324として回転処理される。このようにして、圧縮画像データ全体について回転処理が完成する。
図4は、JPEG圧縮画像データを90度回転する場合について、詳細に説明するための図である。図4(a)は、ブロック単位で圧縮記録されたJPEG圧縮画像データをブロック単位で伸張し、ブロック単位でラスタデータを出力する状態を示している。図4(b)は、マスキング処理されたブロック単位の状態を示している。図4(c)は、ブロック単位のデータを90度回転する状態を示している。図4(d)は、図4(a)の詳細を示す動作概念図である。図4(e)は、図4(b)の詳細を示す動作を説明する概念図である。図4(f)は、図4(c)の詳細を示す動作を説明する概念図である。
次に、図5は、第1の第2バッファメモリ制御回路112及び第2の第2バッファメモリ制御回路114の動作を説明する概念図である。第1の第2バッファメモリ制御回路112及び第2の第2バッファメモリ制御回路114は、第2バッファメモリ113を二次元の平面とみなす。そして、第2バッファメモリ113上への矩形領域の画像データデータ転送及び第2バッファメモリ113上の矩形領域の画像データのデータ転送を行なう。
図5(a)において、P1、P2、P3、P4、P5、P6、・・・はアドレスを、Nはデータを転送する矩形領域の画像データライン数を、Mは1ラインの画像データのピクセル数(ワード数)をそれぞれ表わしている。また、点線で表わされているオフセット距離Jの値は、P3−P2、P5−P4、・・・等であって、全て等しい。従って、矩形領域の画像データの転送は、図5(a)の左端のポインタから始まるMワードの転送をN回繰り返すことによって実現することができる。
図5(b)は、第2バッファメモリ113上の矩形領域に90度回転し、データ転送を行なう動作を表す。図5(b)において、P1、P2、P3、P4、P5、P6、・・・、やP1−1、P1−2、P1−3、・・・はそれぞれアドレスを表す。また、Mはデータを転送する矩形領域の画像データのライン数を、Nは1ラインの画像データのピクセル数(ワード数)をそれぞれ表わしている。また、オフセット距離Kの値は(P1-1)−P1、(P1−2)−(P1−1)、・・・で全て等しい。また、点線で表わされているオフセット距離Jの値はP2−P3,P4−P5,・・・であり、全て等しい。従って、各矩形領域の転送は、図5(b)の右端のポインタから始まるMラインの画像データの転送をN回繰り返すことによって実現することができる。
図6は、上記で説明した二次元データ転送の動作を示すフローチャートである。同図において、P1、M、N、Jは、図5(a)におけるP1、M、N、Jと対応し、第1の第2バッファメモリ制御回路112の設定レジスタにセットされる。
図6において、まず、ステップS601でカウンタ値h、cが0にリセットされる。次に、ステップS602でカウンタ値h及びcからアドレスaが求められる(a=P1+h+(M+J)c)。次に、ステップS703でステップS602において求められたアドレスaに対し、矩形領域の画像データが順次転送される。
次に、ステップS604でカウンタ値hが1つインクリメント(h=h+1)され、次のステップS605で、カウンタ値hが1ラインの画像データのピクセル数(ワード数)Mと等しい(h=M)か否かが判断される。そして、カウンタ値hが1ラインの画像データのピクセル数(ワード数)Mと等しいと判断された場合、即ち、1ライン分の画像データの処理が終了した場合は、次のステップS606へ進む。そして、カウンタ値hがリセット(h=0)され、カウンタ値cが1つインクリメント(c=c+1)される。
次のステップS607ではライン数の比較が行なわれ、カウンタ値cが画像データを転送する矩形領域の画像データのライン数Nと等しい(c=N)か否かが判断される。そして、カウンタ値cがデータを転送する矩形領域の画像データのライン数Nと等しいと判断された場合、即ち、全ラインの矩形領域の画像データが転送された場合は、この転送処理の動作を終了する。
一方、ステップS605で、カウンタ値hが1ラインの画像データのピクセル数(ワード数)Mと異なる、及びステップS607で、カウンタ値cが、転送する矩形領域の画像データのライン数Nと異なると判断された場合は、ステップS602へ戻る。そして、次のラインの画像データの転送を行なう。以上のような処理によって画像データの二次元データ転送が実現できる。
図7は、回転処理を伴う二次元データ転送の動作の流れを示すフローチャートである。同図において、P1、M、N、Kは、図5(b)におけるP1、M、N、Kと対応し、第1の第2バッファメモリ制御回路114の設定レジスタにセットされる。
図7において、まず、ステップS701でカウンタ値h、cがリセットされる。次に、ステップS702でカウンタ値h、cからアドレスaが求められる(a=P1+h−c)。次に、ステップS703において、ステップS702において求められた第2バッファメモリ113のアドレスaに対して画像データが書き込みされる。
次に、ステップS704でカウンタ値hがオフセット値Kを加算(h=h+K)され、次のステップS705でカウンタ値hがライン数Mと等しい(h=M)か否かが判断される。そして、カウンタ値hがライン数Mと等しいと判断された場合、即ち、P1からP2の垂直方向に1ラインの画像データの処理が終了した場合は、次のステップS706へ進む。そして、カウンタ値hがリセット(h=0)され、カウンタ値cが1つインクリメント(c=c+1)される。そして、次のステップS707でピクセル数(ワード数)の比較が行なわれ、カウンタ値cが画像データを転送する矩形領域のピクセル数Nと等しい(c=N)か否かが判断される。そして、カウンタ値cがデータを転送する矩形領域のピクセル数Nと等しいと判断された場合、即ち、全ラインの画像データが転送されていた場合は、本処理動作を終了する。
一方、ステップS705で、カウンタ値hが1ライン数Mと等しくないと判断された及びステップS707で、カウンタ値cがデータを転送する矩形領域のピクセル数Nと等しくないと判断された場合は、いずれもステップS702へ戻る。そして、次のラインの画像データの転送を行なう。以上のような処理によって90度回転する二次元データ転送が実現できる。
図8は、単一のDRAMを、DRAM103とは別に使用する場合のDRAM上の第1バッファメモリ108、第2バッファメモリ113及び第3バッファメモリ117のバッファメモリ構成を表す図である。DRAMは16MBの容量を持ち、第1バッファメモリ108には、水平3072、垂直2304の第1のJPEG圧縮されたJPEG圧縮画像データ領域として、5MBを割当てる。
第2バッファメモリ113には、水平3072ピクセル、垂直2304ピクセル、YUV422フォーマット(1ピクセル2バイト)の画像領域を3分割し、4.5MBを割当てる。
=3072×2304×2/3
=4718592[byte]
=4.5[MB] 。
第3バッファメモリ117には、水平2304ピクセル、垂直3072ピクセルのJPEG圧縮された第2のJPEG圧縮画像データ領域として、可変長符号化処理を行うことにより、元の画像データの約1/3にデータ量が圧縮するとして、5MBを割当てる。
次に、本実施形態1に係る画像回転処理の動作を、図9のフローチャート図に基づき具体的に説明する。具体例として、JPEG圧縮画像データの元画像サイズの縦横比が4:3、水平3072ピクセル、垂直2304ピクセルの画像データを、90度回転し、水平2304ピクセル、垂直3072ピクセルのJPEG圧縮画像データを生成する場合について説明する。
処理の開始後、ステップS1では、CPU100はシステムバス101を介して、記録媒体106上のJPEG圧縮画像データを第1バッファメモリ108へ転送する。ステップS2では、第1バッファメモリ108上のJPEG圧縮画像データから水平及び垂直のサイズを読出し、水平3072ピクセル、垂直2304ピクセルとする。ステップS3では、第2バッファメモリ113で使用可能な容量を求める。
第2バッファメモリ113で使用可能な容量は、DRAMの容量16MBから、第1バッファメモリ108及び第3バッファメモリ117を減算した容量となり、6MBを割当てる。したがって
=16−(5×2)
=6[MB]となる。
次に、ステップS3では、第2バッファメモリ113で使用可能な容量から、JPEG伸長を繰り返す回数(水平分割数)を求める。JPEG伸長を繰り返す回数は、第バッファメモリ113で使用可能な容量、伸長後の画像データサイズ割り、結果の小数点以下を切り上げ整数とした結果で求められる。すなわち、
伸長後の画像データサイズ=3072×2304×2
=14155776[byte]
=13.5[MB]
伸長後の画像データサイズ/第2バッファメモリで使用可能な容量=13.5/6
=2.25
よって水平分割数=3となり、
ここで、XNには、水平分割数−1されたXN=2が設定される。
ステップS4では、画像の回転角度の指定を判別し、図2に示す90度回転を指示されたのであれば、ステップS5へ移行する。ステップS5では、第1の第2バッファメモリ制御回路112の制御により、第1バッファメモリ108から伸長回路110に対し、JPEG圧縮画像データのDMA転送が行われる。伸長回路110はJPEG圧縮画像データをブロック単位で伸張し、ブロック単位で512×8画素のラスタデータを、図4(a)に示すように[0、0]〜[5、0]、[0、1]〜[5、1]、〜[0、277]〜[5、277]と順次出力する。
ステップS6では、伸長回路110から順次出力される図4(a)及び図2(a)に示す画像データから、図4(b)及び図2(b)に示す水平2ブロック、水平1、2ブロック、左側の1024×2304画素分の画像データ202(XN領域)を切り出す。そして、残りの水平4ブロック、水平3、4、5、6ブロック2048×2304画素分の画像データを読み捨てる(トリミング)
ステップS7では、トリミング回路111で切り出された1024×2304画素分の画像202を第1の第2バッファメモリ制御回路112により、図4(c)及び図2(c)に示す90度回転を行う。切り出された1024×2304画素分の画像データ202は、図4(b)に示すように、[0、0][1、0]、[0、1][1、1]、〜[0、277]〜[1、277]と順次出力する。
出力される画像データは、図5(a)に示す二次元データ転送で行われ、この二次元データ転送された画像データを、図5(b)に示す二次元データ転送で第2バッファメモリ113に順次転送する。これにより、図4(c)及び図2(c)に示す回転された2304×1024画素分の画像データ203が第2バッファメモリ113上に生成される。
ステップS8では、第2の第2バッファメモリ制御回路114によって図6のフローチャートに従い、第2バッファメモリ113上の90度回転された2304×1024画素分の画像データを圧縮回路115へ転送する。
圧縮回路115では、設定された量子化テーブルに基づきブロック符号化処理が行われる。そして、圧縮されたJPEG圧縮画像データが第3バッファメモリ117に転送され、図2(d)に示す第2のJPEG圧縮画像データが生成される。
ステップS9では、XNの判定をし、XN=2である事から、ステップS10へ移行する。ステップS10では、水平1ブロックの処理が終了した事から、XN=XN−1の処理が行われ、XN=1が設定される。
次に、ステップS4の処理へ戻り、次のステップS4では、画像の回転角度を判別し、前の判定と同じく90度回転を指示された状態であり、順次ステップS5〜ステップS8と繰り返し、図2(e)〜(h)に示す動作を行う。
ステップS5では、前記ステップS5と同様、再度、第1バッファメモリ制御回路109の制御により、第1バッファメモリ108から伸長回路110に対してJPEG圧縮画像データのDMA転送が行われる。伸長回路110はJPEG圧縮画像データをブロック単位で伸張し、ブロック単位で512×8画素のラスタデータを図4(a)に示すように[0、0]〜[5、0]、[0、1]〜[5、1]、〜[0、277]〜[5、277]と順次出力する。
ステップS6では、伸長回路110から順次出力される図2(e)に示す水平2ブロック、水平1、2ブロックの左側の1024×2304画素を読み捨て、水平2ブロック、水平3、4ブロックの1024×2304画素分の画像データ212を切り出す。そして、残りの水平2ブロック、水平5、6ブロックの1024×2304画素分のデータを読み捨てる。
ステップS7では、トリミング回路111で切り出された1024×2304画素の画像データ212を第1の第2バッファメモリ制御回路112で、図2(g)に示す90度回転を行う。切り出された1024×2304画素の画像データ212の出力される画像データは、図5(a)に示す二次元データ転送で行われる。この二次元データ転送された画像データは、図5(b)に示す二次元データ転送で第2バッファメモリ113へ順次転送され、図2(g)示す回転された2304×1024画素分の画像データ213が第2バッファメモリ113上に生成される。
ステップS8では、第2の第2バッファメモリ制御回路109によって図7のフローチャートに従い、第2バッファメモリ113上の90度回転された2304×1024画素の画像データ213を圧縮回路115へ転送する。圧縮回路115では、設定された量子化テーブルに基づきブロック符号化処理が行われる。圧縮されたJPEG圧縮画像データが第3バッファメモリ117のJPEG圧縮画像データ204として続き転送され、図2(h)示す第2のJPEG圧縮画像データが生成される。
ステップS9では、XNの判定をし、XN=1である事から、ステップS10へ移行する。ステップS10では、水平2ブロックの処理が終了した事から、XN=XN−1の処理が行われ、XN=0が設定される。
次に、ステップS4の処理へ戻り、次のステップS4では、画像の指定の回転角度を判別し、前判定と同じく90度回転を指示された状態であるので、順次ステップS5〜ステップS8と繰り返し、図2(i)〜(l)に示す動作を行う。
ステップS5では、前記ステップS5と同様、再度、第1バッファメモリ107から、同一のJPEG圧縮画像データが第1バッファメモリ制御回路109の制御により、伸長回路110に対してDMA転送される。伸長回路110はJPEG圧縮画像データをブロック単位で伸張し、ブロック単位で512×8画素のラスタデータを図4(a)に示すように[0、0]〜[5、0]、[0、1]〜[5、1]、〜[0、277]〜[5、277]と順次出力する。
ステップS6では、伸長回路110から順次出力される図2(i)に示す水平4ブロック、水平1、2、3、4ブロックの左側の2048×2304画素分の画像データを読み捨てる。そして、水平2ブロック、水平5、6ブロックの1024×2304画素、画像データ222を切り出す。ステップS7では、トリミング回路111で切り出された1024×2304画素の画像データ222を第1の第2バッファメモリ制御回路112で、図2(k)に示す90度回転を行う。切り出された1024×2304画素の画像データ222の出力されるデータは、図5(a)に示す二次元データ転送で行われる。この二次元データ転送されたデータは、図5(b)に示す二次元データ転送で第2バッファメモリ113へ順次転送され、図2(k)示す回転された2304×1024画素分の画像データ223が第2バッファメモリ113上に生成される。
ステップS8では、第2の第2バッファメモリ制御回路114によって図7のフローに従い、第2バッファメモリ113上の90度回転された2304×1024画素の画像データ223を圧縮回路115へ転送する。圧縮回路115では、設定された量子化テーブルに基づきブロック符号化処理が行われ、圧縮されたJPEG圧縮画像データが第3バッファメモリ117にJPEG圧縮画像データ214に引き続き転送される。そして、図2(l)示す第2のJPEG圧縮画像データが生成される。
ステップS9では、XNの判定をし、XN=0である事から、ステップS11へ移行する。ステップS11では、バッファメモリ111上のJPEG圧縮画像データを記録媒体106に書き込むことによって、圧縮されたJPEG圧縮画像データが記録媒体106に転送される。これにより、JPEG圧縮画像データを展開するメモリ領域が無くとも、回転されたJPEG圧縮画像データの記録が行える。
ステップS12乃至14における処理は、指定の回転角度が異なるだけで、処理は同様に行われるので、説明は省略する。
また、回転されたJPEG圧縮画像データの完成後、記録媒体に転送する形態で説明をしたが、所定サイズのJPEG圧縮画像データが完成後、順次JPEG圧縮画像データを記録媒体に転送する構成とする事も可能である。また、記録媒体より、JPEG画像データを読出し後、JPEG圧縮画像データの伸長処理を行う形態で説明をした。しかしながら、所定サイズのJPEG圧縮画像データを読出し後、JPEG圧縮画像データの伸長処理を行い、順次JPEG圧縮画像データを読出す構成とする事も可能である。
また、回転されたJPEG圧縮画像データの完成後、記録媒体に転送する形態で説明をしたが、インターフェース等を介して、プリンタ等の外部装置へ転送する構成とする事も可能である。また、各処理をハードウェアで行う説明をしたが、ソフトウェアで構成する事も可能である。
<実施形態2>
次に、本発明の第2の実施形態を図10乃至図13を使用して説明する。
図10は、本発明の実施形態2に係る画像データ処理装置としての撮像装置のシステム構成を示す模式的ブロック図である。先に説明した実施形態1に係る撮像装置のシステム構成を示す模式的ブロック図と異なる点は、第2バッファメモリ113と、圧縮回路115との間に、第2のトリミング回路130を挿入した事である。その他の回路ブロックに関しては、図1で説明した実施形態1と同じであるので説明は省略する。
図11は、図10に示す撮像装置を使用し、回転された画像データに対しトリミングを行う概念図である。図11(a)は、回転、拡大された画像データの例えば表示部105上での関係を示す。同図11(a)において、1101は90度時計方向に回転した全画像を示し、1102は全画像1101の一部を拡大し、表示部105で表示される表示画像を示す。また、図11(b)は、表示部105上の回転、拡大された画像と元画像との関係を示し、元画像は表示画像に対し回転されていない。したがって、図11(b)において、1111は、全画像1101を90度時計方向に回転する前の元画像を示す。また、1112は、表示部105で表示される全画像1101に相当する元画像のトリミング領域に相当する。
図12は、JPEG圧縮画像データをトリミングし、90度回転する場合についての動作を説明するための図である。図12(a)は、ブロック単位で圧縮記録されたJPEG圧縮画像データをブロック単位で伸張し、ブロック単位でラスタデータを出力する状態を示している。また、図12(b)は、マスキング処理されたブロック単位の状態を示している。また、図12(c)は、ブロック単位の画像データを90度回転処理する状態を示している。図12(d)は、90度回転処理された画像データから矩形領域をトリミングする、JPEG圧縮画像データの画像処理を示している。
実施形態1の場合と同様に、図8は、単一のDRAMを、DRAM103とは別に使用する場合のDRAM上の第1バッファメモリ108、第2バッファメモリ113及び第3バッファメモリ117のバッファメモリ構成を表す図である。DRAMは16MBの容量を持ち、第1バッファメモリ108には、水平3072及び垂直2304の第1のJPEG圧縮されたJPEG圧縮画像データ領域として5MBを割当てる。
第2バッファメモリ113には、水平1288ピクセル、垂直1024ピクセル、YUV422フォーマット(1ピクセル2バイト)の画像領域の2.5MBを割当てる。即ち
=1288×1024×2
=2637824 [byte]
=2.5[MB] となる。
また、第3バッファメモリ117には、実施形態1の場合と同様に5.0MBの容量を割り当てる。
次に、本実施形態2に係る回転処理の動作を、図13に示すフローチャートに従って具体的に説明する。具体例として、JPEG圧縮画像データの元画像サイズの縦横比が4:3、水平3072ピクセル、垂直2304ピクセルの画像データから、トリミング指示された水平1056、垂直4の位置から水平960ピクセル、垂直1280ピクセルの画像を切り出す。そして、90度回転し、水平1280ピクセル、垂直960ピクセルのJPEG圧縮画像データを生成する場合について説明する。
処理の開始後ステップS1301では、CPU100はシステムバス101を介して、記録媒体106上のJPEG圧縮画像データを第1バッファメモリ108へ転送する。ステップS1302では、第1バッファメモリ108上のJPEG圧縮画像データから水平、垂直のサイズを読出し、水平3072ピクセル、垂直2304ピクセルとする。ステップS1303では、第2バッファメモリ113で使用可能な容量を求める。
第2バッファメモリ113で使用可能な容量は、DRAMの容量16MBから、第1バッファメモリ108及び第3バッファメモリ117を減算した容量となり、6MB割当てる。したがって
=16−(5×2)
=6[MB]となる。
すなわちステップS1303では、第2バッファメモリ113で使用可能な容量から、JPEG伸長を繰り返す回数(水平分割数)を求める。JPEG伸長を繰り返す回数は、第バッファメモリ113で使用可能な容量、伸長後の画像データサイズ割り、結果の小数点以下を切り上げ整数とした結果で求められる。すなわち、
伸長後の画像データサイズ=1288×1024×2
=2637824 [byte]
=2.5[MB]
伸長後の画像データサイズ/第2バッファメモリで使用可能な容量=2.5/6
=0.42
よって水平分割数=1
となり、ここで、XNには、水平分割数−1されたXN=0が設定される。
ステップS1304では、画像の指定された回転角度を判別し、90度回転を指示された状態であれば、ステップS1305へ移行する。ステップS1305では、第1バッファメモリ108からJPEG圧縮画像データを第1の第2バッファメモリ制御回路112の制御により伸長回路110にDMA転送が行われる。伸長回路110は、JPEG圧縮画像データをブロック単位で伸張し、ブロック単位で512×8画素のラスタデータを図11(a)に示すように[0、0]〜[5、0]、[0、1]〜[5、1]、〜[0、277]〜[5、277]と順次出力する。
次にステップS1306に進む。そして、伸長回路110から順次出力される図12(a)に示す画像データを、図12(b)に示す水平2ブロック、水平3、4ブロック、垂直161ブロックの垂直1から161ブロック1024×1288画素分の画像データ(XN領域)を切り出す。そして、残りの水平4ブロック、水平1、2、5、6ブロック、垂直ブロック162から287ブロックの画像データを読み捨てる(トリミング)
次にステップS1307に進み、トリミング回路111で切り出された1024×1288画素分の画像を第1の第2バッファメモリ制御回路112で、図11(c)に示す90度回転を行う。切り出された1024×1288画素分の画像データを、図11(b)に示すように、[2、0][3、0]、[2、1][3、1]、〜[2、160]〜[3、160]と順次出力する。
出力されるデータは、図5(a)に示す二次元データ転送で行われる。この二次元データ転送されたデータを図5(b)に示す二次元データ転送で第2バッファメモリ113へ順次転送し、図11(c)に示す回転された1288×1024画素分の画像データが第2バッファメモリ113上に生成される。
ステップS1308では、第2バッファメモリ制御回路114によって、実施形態1で使用した図6のフローチャートに従い処理が行われる。すなわち、第2バッファメモリ113上の90度回転された1288×1024画素分の画像データから第2のトリミング回路130で水平4、垂直32の位置から水平1280ピクセル、垂直960ピクセルの画像を切り出し、圧縮回路115へ転送する。
圧縮回路115では、設定された量子化テーブルに基づきブロック符号化処理が行われ、圧縮されたJPEG圧縮画像データが第3バッファメモリ117に転送され、図11(d)示す第2のJPEG圧縮画像データが生成される。
ステップS1309では、XNの判定をし、XN=0である事から、ステップS1311へ移行する。ステップS1311では、バッファメモリ111上のJPEG圧縮画像データを記録媒体106に書き込むことによって、圧縮されたJPEG圧縮画像データが記録媒体106に転送される。これにより、JPEG圧縮画像データを展開するメモリ領域が無くとも、回転されたJPEG圧縮画像データの記録が行える。尚、ステップS1312乃至S1314の処理は、同様に行われるので説明は省略する。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給ししてもよい。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性の半導体メモリカード、ROMなどを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されてもよい。さらに、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれてもよい。そして、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明の実施形態1に係る画像データ処理装置としての撮像装置のシステム構成の1例を示すブロック図である。 本発明の実施形態1に係る撮像装置の90度回転の処理の説明図である。 本発明の実施形態1に係る撮像装置の270度回転の処理の説明図である。 本発明の実施形態1に係る撮像装置の90度回転の処理の説明図である。 本発明の実施形態1に係る撮像装置の二次元データ転送の概念の説明図である。 本発明の実施形態1に係る撮像装置の二次元データ転送の動作を示すフローチャートの1例を示す図である。 本発明の実施形態1に係る撮像装置の90度回転処理の二次元データ転送の動作を示すフローチャートの1例を示す図である。 本発明の実施形態1に係る撮像装置のバッファメモリの割り付けの1例を示す図である。 本発明の実施形態1に係る撮像装置の動作を示すフローチャートの1例を示す図である。 本発明の実施形態2に係る画像データ処理装置としての撮像装置のシステム構成の1例を示すブロック図である。 本発明の実施形態2に係る撮像装置のトリミング処理の概念の説明図である。 本発明の実施形態2に係る撮像装置のトリミング処理の説明図である。 本発明の実施形態2に係る撮像装置の動作を示すフローチャートの1例を示す図である。
符号の説明
100 CPU
101 バスインターフェース(I/F)
106 記録媒体
108、113、117 バッファメモリ
109、112、114、116 バッファメモリ制御回路
110 伸長回路
111、130 トリミング回路
115 圧縮回路

Claims (9)

  1. 圧縮された画像データを記憶する第1記憶手段と、
    伸長され回転された前記画像データの一部を記憶する第2記憶手段と、
    伸長され回転され再度圧縮された前記画像データの全体を記憶する第3記憶手段と、
    を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置であって、
    前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮された画像データを記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定手段と、
    前記第1記憶手段に記憶された画像データを伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記画像データの分割数を決定する分割数決定手段と、
    前記第1記憶手段から読み出される前記画像データを伸長し、当該伸長した画像データを前記分割数に分割して得られる分割領域画像データの1つを出力して残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長手段と
    前記伸長手段から出力される前記分割領域画像データに順次回転処理を行って前記第2記憶手段に記憶する回転手段と
    前記第2記憶手段から読み出される前記分割領域画像データを圧縮して前記第3記憶手段に記憶する圧縮手段と
    備え
    前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理装置。
  2. ブロック単位で圧縮された画像データを記憶する第1記憶手段と、
    伸長され回転された前記画像データの一部を記憶する第2記憶手段と、
    伸長され回転され再度圧縮された前記画像データの全体を記憶する第3記憶手段と、
    を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置であって、
    前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮された画像データを記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定手段と、
    前記第1記憶手段に記憶された画像データを伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記画像データの分割数を決定する分割数決定手段と、
    前記第1記憶手段から読み出される前記画像データを前記ブロック単位で伸長し、当該伸長した画像データを前記ブロック単位の整数倍で前記分割数に分割して得られる分割領域画像データの1つを出力して残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長手段と
    前記伸長手段から出力される前記分割領域画像データに前記ブロック単位の整数倍で順次回転処理を行って前記第2記憶手段に記憶する回転手段と
    前記第2記憶手段から読み出される前記分割領域画像データを圧縮して前記第3記憶手段に記憶する圧縮手段と
    備え
    前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理装置。
  3. ブロック単位で圧縮された画像データを記憶する第1記憶手段と、
    伸長され回転された前記画像データの一部を記憶する第2記憶手段と、
    伸長され回転され再度圧縮された前記画像データの全体を記憶する第3記憶手段と、
    を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置であって、
    前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮された画像データを記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定手段と、
    前記第1記憶手段に記憶された画像データを伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記画像データの分割数を決定する分割数決定手段と、
    前記第1記憶手段から読み出される前記画像データを前記ブロック単位で伸長し、当該伸長した画像データを前記ブロック単位の整数倍で前記分割数に分割して得られる分割領域画像データの1つをトリミングして残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長手段と
    前記伸長手段から出力される前記分割領域画像データに前記ブロック単位の整数倍で順次回転処理を行って前記第2記憶手段に記憶する回転手段と
    前記第2記憶手段から読み出される前記分割領域画像データを圧縮して前記第3記憶手段に記憶する圧縮手段と
    備え
    前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理装置。
  4. ブロック単位で圧縮された画像データを記憶する第1記憶手段と、
    前記画像データのトリミングするトリミング領域を指示するトリミング指示手段と、
    伸長され回転された前記トリミング領域の一部を記憶する第2記憶手段と、
    伸長され回転され再度圧縮された前記トリミング領域の全体を記憶する第3記憶手段と、
    を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置であって、
    前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮されたトリミング領域を記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定手段と、
    前記第1記憶手段に記憶された画像データのうち前記トリミング領域を含む前記ブロック単位の整数倍の領域を伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記トリミング領域の分割数を決定する分割数決定手段と、
    前記第1記憶手段から読み出される前記画像データを前記ブロック単位で伸長し、当該伸長した画像データのうち前記トリミング領域を含む前記ブロック単位の整数倍の領域を前記ブロック単位の整数倍で前記分割数に分割して得られる分割領域画像データの1つを出力して残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長手段と
    前記伸長手段から出力される前記分割領域画像データに前記ブロック単位の整数倍で順次回転処理を行って前記第2記憶手段に記憶する回転手段と
    前記第2の記憶手段に記憶された前記分割領域画像データを、前記トリミング領域でトリミングして読み出すトリミング手段と、
    記トリミング手段でトリミングされた前記トリミング領域の画像データを圧縮して前記第3記憶手段に記憶する圧縮手段と
    備え
    前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理装置。
  5. 前記回転手段は、前記画像データの左側に位置する前記分割領域画像データから順次90度の回転処理を行うことを特徴とする請求項1乃至4のいずれか1項に記載の画像データ処理装置。
  6. 前記回転手段は、前記画像データの右側に位置する前記分割領域画像データから順次270度の回転処理を行うことを特徴とする請求項1乃至4のいずれか1項に記載の画像データ処理装置。
  7. 圧縮された画像データを記憶する第1記憶手段と、
    伸長され回転された前記画像データの一部を記憶する第2記憶手段と、
    伸長され回転され再度圧縮された前記画像データの全体を記憶する第3記憶手段と、
    を備え、前記第1、前記第2、及び前記第3記憶手段の記憶容量の合計が一定容量をとる画像データ処理装置における画像データ処理方法であって、
    記憶容量決定手段が、前記圧縮された画像データを記憶可能であるように前記第1記憶手段の記憶容量を決定し、前記再度圧縮された画像データを記憶可能であるように前記第3記憶手段の記憶容量を決定し、前記一定容量から前記第1及び第3記憶手段の記憶容量を差し引いた記憶容量を前記第2記憶手段の記憶容量とする記憶容量決定工程と、
    分割数決定手段が、前記第1記憶手段に記憶された画像データを伸長した場合のデータサイズと、前記第2記憶手段の記憶容量とに基づいて、前記画像データの分割数を決定する分割数決定工程と、
    伸長手段が、第1記憶手段から読み出される圧縮された画像データを伸長し、当該伸長した画像データを前記分割数に分割して得られる分割領域画像データの1つを出力して残りを破棄することを繰り返すことにより、前記分割数の前記分割領域画像データを1つずつ順に出力する伸長工程と
    回転手段が、前記伸長手段から出力される前記分割領域画像データに順次回転処理を行って前記第2記憶手段に記憶する回転工程と
    圧縮手段が、前記第2記憶手段から読み出される前記分割領域画像データを圧縮して前記第3記憶手段に記憶する圧縮工程と
    備え
    前記伸長工程において前記伸長手段は、出力した1つの前記分割領域画像データに関して前記圧縮手段による前記第3記憶手段への記憶が行われた後に、次の1つの前記分割領域画像データを出力する、ことを特徴とする画像データ処理方法。
  8. 請求項に記載された画像データ処理方法の各工程をコンピュータに実行させるためのプログラム。
  9. 請求項に記載されたプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2006240793A 2005-11-09 2006-09-05 画像データ処理装置、画像データ処理方法、プログラム及び記録媒体 Expired - Fee Related JP4974619B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006240793A JP4974619B2 (ja) 2005-11-09 2006-09-05 画像データ処理装置、画像データ処理方法、プログラム及び記録媒体
US11/557,742 US8184327B2 (en) 2005-11-09 2006-11-08 Image data processing apparatus, image data processing method, and program
US13/439,744 US8456687B2 (en) 2005-11-09 2012-04-04 Image data processing apparatus, image data processing method, and program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005325296 2005-11-09
JP2005325296 2005-11-09
JP2006240793A JP4974619B2 (ja) 2005-11-09 2006-09-05 画像データ処理装置、画像データ処理方法、プログラム及び記録媒体

Publications (3)

Publication Number Publication Date
JP2007159094A JP2007159094A (ja) 2007-06-21
JP2007159094A5 JP2007159094A5 (ja) 2009-10-15
JP4974619B2 true JP4974619B2 (ja) 2012-07-11

Family

ID=38003430

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006240793A Expired - Fee Related JP4974619B2 (ja) 2005-11-09 2006-09-05 画像データ処理装置、画像データ処理方法、プログラム及び記録媒体

Country Status (2)

Country Link
US (2) US8184327B2 (ja)
JP (1) JP4974619B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7742199B2 (en) * 2004-10-06 2010-06-22 Kabushiki Kaisha Toshiba System and method for compressing and rotating image data
US8542867B2 (en) * 2007-07-31 2013-09-24 Canon Kabushiki Kaisha Image processing for reproducing code image from original information
US20100225778A1 (en) * 2007-11-22 2010-09-09 Satoshi Hosokawa Image capturing device, encoding method, and program
US20110286663A1 (en) * 2010-05-20 2011-11-24 Wen-Lung Huang Method And Apparatus Of Color Image Rotation For Display And Recording Using JPEG
JP5635551B2 (ja) * 2012-03-29 2014-12-03 京セラドキュメントソリューションズ株式会社 画像処理装置および画像形成装置
US8939530B2 (en) * 2013-01-23 2015-01-27 Hewlett-Packard Development Company, L.P. Pixel data processing
JP5692438B1 (ja) * 2014-03-20 2015-04-01 富士ゼロックス株式会社 画像処理装置およびプログラム
JP2021164046A (ja) * 2020-03-31 2021-10-11 キヤノン株式会社 画像処理装置、記録装置、画像処理方法、およびプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW376491B (en) * 1991-06-22 1999-12-11 Fuji Xerox Co Ltd Image processing system with a buffer memory
JPH09247423A (ja) 1996-03-04 1997-09-19 Canon Inc 画像処理装置およびその方法
JPH10208031A (ja) * 1997-01-17 1998-08-07 Fuji Xerox Co Ltd 画像処理装置
JPH11146184A (ja) * 1997-11-05 1999-05-28 Murata Mach Ltd 画像回転機能付き通信端末装置
JP2001285645A (ja) * 2000-01-25 2001-10-12 Canon Inc 画像入力装置、画像処理装置、画像入力方法、画像処理方法、及び画像入力システム
JP2003092674A (ja) 2001-09-18 2003-03-28 Fuji Xerox Co Ltd 画像処理装置および画像処理方法
JP2003296054A (ja) * 2002-04-01 2003-10-17 Seiko Epson Corp ページプリンタ、印刷システム及びプリンタドライバ
JP4630618B2 (ja) * 2004-09-29 2011-02-09 キヤノン株式会社 画像生成装置およびその方法
US20070024935A1 (en) * 2005-07-27 2007-02-01 Kabushiki Kaisha Toshiba Image forming apparatus

Also Published As

Publication number Publication date
US20070103722A1 (en) 2007-05-10
US20120195512A1 (en) 2012-08-02
US8184327B2 (en) 2012-05-22
JP2007159094A (ja) 2007-06-21
US8456687B2 (en) 2013-06-04

Similar Documents

Publication Publication Date Title
JP4974619B2 (ja) 画像データ処理装置、画像データ処理方法、プログラム及び記録媒体
US7027086B1 (en) Photographing apparatus and signal processing method that allow data of still pictures to be converted into a moving picture file
JP4130207B2 (ja) 画像処理表示装置および画像処理表示方法
JP2003087563A5 (ja)
JP2007097145A (ja) 画像符号化装置及び画像符号化方法
JP4151684B2 (ja) 符号化装置、符号化方法および符号化プログラム、並びに撮像装置
JPS6275773A (ja) 画像圧縮装置
JP2006325186A (ja) 画像処理装置
JPH07322075A (ja) 画像処理装置及びスキャナ装置及びプリンタ装置及びディジタル複写機及びディスプレイ装置
JP2004112260A (ja) 画像処理装置、画像形成装置、プログラム及び記憶媒体
JP3772569B2 (ja) 画像処理装置および画像処理方法
JP4081736B2 (ja) 動画像プリンタ、動画像プリント方法、及び、動画像印刷プログラムを記録したコンピュータ読み取り可能な記録媒体
JP4630618B2 (ja) 画像生成装置およびその方法
JP2004222186A (ja) 画像データ構造、並びに画像記録方法、装置及びプログラム
JP7020782B2 (ja) 再生装置及びその制御方法
JP2537261B2 (ja) 画像信号の圧縮記録装置および伸長再生装置
JPH05204747A (ja) 半導体メモリコントローラ
JP2003092674A (ja) 画像処理装置および画像処理方法
JPH10341437A (ja) 画像処理方法及び装置
JPH0488749A (ja) 画像処理装置
JP2020088694A (ja) 画像処理装置、画像処理方法
JP4155874B2 (ja) 画像変換装置および画像変換方法
JPH09219782A (ja) 印字用データ発生装置
JP2016005086A (ja) 画像記録システムおよび画像記録再生装置
JPH06291987A (ja) 画像出力装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090827

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090827

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110726

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120406

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120410

R151 Written notification of patent or utility model registration

Ref document number: 4974619

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150420

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees