9

写真(jpg)の品質を判断する方法を探しています。最初に頭に浮かんだのは、ファイルサイズと保存されているピクセルの量を比較することでした。たとえば、jpg のノイズの量を確認するなど、他の方法はありますか? このトピックや経験に関する良い読書リンクを持っている人はいますか? ちなみに、私が取り組んでいるプロジェクトは C# (.net 3.5) で書かれており、画像処理には Aurigma Graphics Mill を使用しています。

前もって感謝します!

4

5 に答える 5

7

「品質」の意味が完全にはわかりません.JPG圧縮アルゴリズムの品質設定を意味する場合は、画像のEXIFタグから抽出できる場合があります(キャプチャデバイスに依存し、あなたのライブラリについては、ここを参照してください:

http://www.aurigma.com/Support/DocViewer/30/JPEGFileFormat.htm.aspx

他の種類の「品質」を意味する場合は、品質のより良い定義を考え出す必要があります. たとえば、過度の露出が問題になる場合があります。この場合、飽和したピクセルを探すことで、その特定の種類の品質を判断するのに役立ちます。または、より一般的には、3 つのカラー チャネルの画像ヒストグラムの統計 (平均、標準偏差) を見ることができます。画像の焦点が合っていない可能性があります。この場合、画像のフーリエ変換の空間周波数のカットオフを探すことができます。スペックル ノイズが気になる場合は、メディアン フィルターを画像に適用して、元の画像と比較してみてください (スペックル ノイズが多いほど変化が大きくなります)。

「品質」とは、構成などの美的特性を意味する場合、幸運を祈ります!

于 2009-01-12T13:58:38.583 に答える
2

画像の「品質」は、特定の値に対応していないため、測定できません。特定のサイズの画像のピクセル数としてそれを取ると、正確ではありません。悪い光条件で撮影された写真は、良い光条件で撮影された別の画像とまったく同じピクセル数であっても、「品質が悪い」と言うかもしれません。この用語は、画像の技術仕様ではなく、画像の全体的な効果について話すためによく使用されます。

于 2011-03-07T18:00:54.967 に答える
0

圧縮プロセス自体の品質を判断する方法について質問されていると思います。これは、JPEGをBMPに変換し、そのBMPをJPEGが作成された元のビットマップと比較することで実行できます。ピクセルごとにビットマップを繰り返し処理し、ピクセルの各ペア(つまり、元のピクセルとのピクセル)のR、G、B値の差を合計することで、ピクセル間の「距離」を計算できます。 JPEG)およびピクセルの総数で除算します。これにより、元のJPEGとJPEGの平均差を測定できます。

于 2009-01-12T13:39:49.417 に答える
0

私は似たようなことをしたかったのですが、「Soylent Green」オプションが欲しかったので、人々を使って比較を行って画像をランク付けしました. 質問への回答はこちらをご覧ください

于 2009-01-12T12:42:20.547 に答える
-2

画像のピクセル数を読み取ると、「メガピクセル」サイズ (#pixels/1000000) がわかります。これは、プログラムによる品質チェックの大まかな形式になる可能性がありますが、写真が適切に焦点を合わせられているかどうかはわかりません。焦点を合わせたり(電車のような動きの速い物体を考えてください)、天候や写真に見る価値のあるものがない場合は、人間、または必要に応じてが必要になります。

于 2009-01-12T12:26:04.167 に答える