Вход

Анализ методов сравнения графический изображений.

Рекомендуемая категория для самостоятельной подготовки:
Дипломная работа*
Код 125363
Дата создания 2009
Страниц 91
Источников 39
Мы сможем обработать ваш заказ (!) 19 апреля в 18:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
6 740руб.
КУПИТЬ

Содержание

Оглавление
Введение
Первая глава. Обзор способов различения картинок
Попиксельный способ
Коэффициент Пирсона
Коэффициент Спирмена
Способ с использованием преобразования Фурье
Обзор других способов
Вторая глава. Преобразование Фурье
Прямое и обратное и свойства
Дискретное преобразование Фурье
Применение
Физический смысл преобразования
Реализация
Третья глава. Описание способа распознавания
Теоретическое описание
Обоснование способа
Список литературы

Фрагмент работы для ознакомления

buttonCreateBorder.Name = "buttonCreateBorder";
this.buttonCreateBorder.Size = new System.Drawing.Size(300, 37);
this.buttonCreateBorder.TabIndex = 7;
this.buttonCreateBorder.Text = "Выделение границ";
this.buttonCreateBorder.UseVisualStyleBackColor = true;
this.buttonCreateBorder.Click += new System.EventHandler(this.button2_Click);
//
// button1
//
this.button1.ForeColor = System.Drawing.SystemColors.Desktop;
this.button1.Location = new System.Drawing.Point(100, 645);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(125, 37);
this.button1.TabIndex = 8;
this.button1.Text = "ЧБ";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// Correlate
//
this.Correlate.ForeColor = System.Drawing.SystemColors.Desktop;
this.Correlate.Location = new System.Drawing.Point(1004, 157);
this.Correlate.Name = "Correlate";
this.Correlate.Size = new System.Drawing.Size(142, 55);
this.Correlate.TabIndex = 9;
this.Correlate.Text = "Корреляционный способ";
this.Correlate.UseVisualStyleBackColor = true;
this.Correlate.Click += new System.EventHandler(this.Correlate_Click_1);
//
// FFT
//
this.FFT.ForeColor = System.Drawing.SystemColors.Desktop;
this.FFT.Location = new System.Drawing.Point(1004, 233);
this.FFT.Name = "FFT";
this.FFT.Size = new System.Drawing.Size(142, 50);
this.FFT.TabIndex = 10;
this.FFT.Text = "FFT";
this.FFT.UseVisualStyleBackColor = true;
this.FFT.Click += new System.EventHandler(this.FFT_Click);
//
// buttonResize
//
this.buttonResize.ForeColor = System.Drawing.SystemColors.Desktop;
this.buttonResize.Location = new System.Drawing.Point(341, 645);
this.buttonResize.Name = "buttonResize";
this.buttonResize.Size = new System.Drawing.Size(140, 40);
this.buttonResize.TabIndex = 11;
this.buttonResize.Text = "Изменение размера";
this.buttonResize.UseVisualStyleBackColor = true;
this.buttonResize.Click += new System.EventHandler(this.buttonResize_Click);
//
// pictureBox7
//
this.pictureBox7.Location = new System.Drawing.Point(977, 340);
this.pictureBox7.Name = "pictureBox7";
this.pictureBox7.Size = new System.Drawing.Size(300, 300);
this.pictureBox7.TabIndex = 5;
this.pictureBox7.TabStop = false;
//
// GUI
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.ClientSize = new System.Drawing.Size(1284, 694);
this.Controls.Add(this.buttonResize);
this.Controls.Add(this.FFT);
this.Controls.Add(this.Correlate);
this.Controls.Add(this.button1);
this.Controls.Add(this.buttonCreateBorder);
this.Controls.Add(this.buttonSmoothBrightness);
this.Controls.Add(this.pictureBox7);
this.Controls.Add(this.pictureBox6);
this.Controls.Add(this.pictureBox5);
this.Controls.Add(this.pictureBox4);
this.Controls.Add(this.pictureBox3);
this.Controls.Add(this.pictureBox2);
this.Controls.Add(this.pictureBox1);
this.ForeColor = System.Drawing.SystemColors.ButtonShadow;
this.Name = "GUI";
this.Text = "тест возможностей";
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox5)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox6)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox7)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.PictureBox pictureBox2;
private System.Windows.Forms.PictureBox pictureBox3;
private System.Windows.Forms.PictureBox pictureBox4;
private System.Windows.Forms.PictureBox pictureBox5;
private System.Windows.Forms.PictureBox pictureBox6;
private System.Windows.Forms.Button buttonSmoothBrightness;
private System.Windows.Forms.Button buttonCreateBorder;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.Button Correlate;
private System.Windows.Forms.Button FFT;
private System.Windows.Forms.Button buttonResize;
private System.Windows.Forms.PictureBox pictureBox7;
}
}
Приведение изображения к серому цвету.
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
namespace FFTLibrary
{
public class ImageManager
{
/// <summary>
/// Preparing picture for FFT
/// </summary>
/// <param name="bitm">Bitmap of the picture to prepare</param>
/// <returns>Prepared Bitmap</returns>
public void GetHistogram(Image picture, out Image histogram)
{
GrayScale.ToGray(picture);
picture = SplineResizeBitmap.Resizing(picture, 256, 256);
double[][] piccolor = new double[picture.Height][];
for (int i = 0; i < piccolor.Length; i++)
piccolor[i] = new double[picture.Width];
for (int i = 0; i < piccolor.Length; i++)
for (int j = 0; j < piccolor[0].Length; j++)
piccolor[i][j] = (picture.GetPixel(i, j).R + picture.GetPixel(i, j).G + picture.GetPixel(i, j).B) / 3;
HistogramFromBytes(piccolor, out histogram, picture.Width, picture.Height);
}
/// <summary>
/// Prepating picture to FFT
/// </summary>
/// <param name="picture">Picture to prepare</param>
private void ProcessPicture(Image picture, out Image histogram)
{
GrayScale.ToGray(picture);
picture = SplineResizeBitmap.Resizing(picture, 1024, 1024);
GetHistogram(picture, out histogram);
}
/// <summary>
/// Main method allowing to compare two pictures and to receive result in percents.
/// </summary>
/// <param name="pattern">Pattern picture.</param>
/// <param name="picture">Picture to compare with pattern.</param>
/// <param name="percent">Difference in percents.</param>
public void ComparePictures(Image pattern, Image picture, out Image patternHistogram, out Image pictureHistogram, uint percent)
{
ProcessPicture(pattern, out patternHistogram);
ProcessPicture(picture, out pictureHistogram);
percent = 0;
}
/// <summary>
/// Get Histogram for given picture
/// </summary>
private void HistogramFromBytes(double[][] data, out Image histogram, int height, int width)
{
histogram = new Image(width, height);
double[][] hist2;
double[][] hist;
new FastFourierTransform().GetHistogram(data, width, height, false, out hist2);
new FastFourierTransform().HistogramToLog(hist2, out hist);
double maxval = hist[0][0];
for (int i = 0; i < histogram.Height; i++)
for (int j = 0; j < histogram.Width; j++)
if (hist[i][j] > maxval)
maxval = hist[i][j];
if (maxval == 0)
maxval = 1;
for (int i = 0; i < histogram.Height; i++)
for (int j = 0; j < histogram.Width; j++)
{
histogram.SetPixel(i, j, Color.FromArgb((int)(hist[i][j] / maxval * 255), (int)(hist[i][j] / maxval * 255), (int)(hist[i][j] / maxval * 255)));
}
}
}
}
Поиск центра фигуры
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
namespace FFTLibrary
{
public class FigureIdent
{
public static void FindCenter(FFTLibrary.Image img, ref int x, ref int y)
{
int chx = 0;
int chy = 0;
int ch = 0;
for (int i = 0; i < img.Width; i++)
{
for (int j = 0; j < img.Height; j++)
{
if (img.GetPixel(i, j).R == 255 && img.GetPixel(i, j).G == 0)
{
ch++;
chx += i;
chy += j;
}
}
}
x = (int)((double)chx / (double)ch);
y = (int)((double)chy / (double)ch);
return;
}
public static void DrawGraph(FFTLibrary.Image img, int x, int y, out double[] rad)
{
rad = new double[720];
rad[0] = 0;
for (double i = 0; i < 360; i+=0.5)
{
double kx = Math.Cos(Math.PI * (double)(i)/180.0);
double ky = Math.Sin(Math.PI * (double)(i)/180.0);
for (double j = 0; j < Math.Max(img.Height, img.Width); j+=0.1)
{
if (x + kx * j < img.Width && x + kx * j > 0 && y + ky * j < img.Height && y + ky * j > 0)
{
if (img.GetPixel((int)(x + kx * j), (int)(y + ky * j)).R == 255 && img.GetPixel((int)(x + kx * j), (int)(y + ky * j)).G == 0)
{
rad[(int)(i*2)] = j;
break;
}
}
else
{
rad[(int)(i*2)] = rad[(int)(i*2) - 1];
}
}
}
}
public static void FindExtremumMax(double[] rad,double[] koef ,out double[] extremum,out int count)
{
extremum = new double[rad.Length];
count = 0;

double[] arr = new double[rad.Length];
for (int i = 0; i < rad.Length; i++)
{
arr[i] = 0;
for (int j = -5; j < 6; j++)
{
arr[i] += rad[(i + j + rad.Length) % rad.Length];
}
arr[i] = arr[i] / 11;
}
for (int i = 0; i < rad.Length; i++)
{
rad[i] = arr[i];
}

for (int i = 0; i < rad.Length; i++)
{
if (rad[i] < rad[(i + 1) % rad.Length])
{
bool flag = false;
for (int j = 2; j < 20; j++)
{
if (rad[(i + 1) % rad.Length] > rad[(i + j) % rad.Length])
{
flag = true;
}
else
{
flag = false;
break;
}
}
if (!flag)
{
extremum[(i + 1) % rad.Length] = 0;
}
else
{
extremum[(i + 1) % rad.Length] = rad[(i + 1) % rad.Length];
}
}
else
{
extremum[(i + 1) % rad.Length] = 0;
}
}
for (int i = 0; i < extremum.Length; i++)
{
for (int j = i; j < extremum.Length; j++)
{
if (extremum[i] < extremum[j])
{
double temp = extremum[i];
extremum[i] = extremum[j];
extremum[j] = temp;
}
}
}
for (int i = 0; i < rad.Length; i++)
{
if (extremum[i] != 0)
{
count++;
}
}
}
public static void DoubleToImage(Image temp,ref double[] rad,out Image res)
{
res = new FFTLibrary.Image(720, Math.Max(temp.Height, temp.Width));
for (int i = 0; i < 720; i++)
{
for (int j = 0; j < Math.Max(temp.Height, temp.Width); j++)
{
res.SetPixel(i, j, Color.FromArgb(255, 255, 255));
}
}
for (int i = 0; i < 720; i++)
{
res.SetPixel(i, Math.Max(temp.Height, temp.Width) - (int)rad[i] * 2, Color.FromArgb(0, 0, 0));
}
}
//--------------------------------------------------------------------------------------
private static Bitmap CheckBorders(Bitmap bmp1)
{
FFTLibrary.Image img = new FFTLibrary.Image(bmp1);
Border brd = new Border(img, 20);
return brd.ToBitmap(Color.Red);
}
public static void GeometricAnalysis(Bitmap picture, out Bitmap hist, out int count)
{
hist = new Bitmap(811, 296);
count = 0;
int x = 0;
int y = 0;


FFTLibrary.Image temp = new FFTLibrary.Image(picture);
FFTLibrary.FigureIdent.FindCenter(temp, ref x, ref y);
double[] rad;
FFTLibrary.FigureIdent.DrawGraph(temp, out rad, 720);
FFTLibrary.Image res;
FFTLibrary.FigureIdent.DoubleToImage(temp, ref rad, out res);
double[] ttt = new double[] { };
FFTLibrary.FigureIdent.FindExtremumMax(rad, null, out ttt, out count);
hist = res.ToBitmap();
}
//--------------------------------------------------------------------------------------
public static void DrawGraph(Image img, out double[] rad, int length)
{
rad=new double[length];
double[] Rad;
double[] Alfa;
double[] Koef;
int x=0;
int y=0;
FindCenter(img, ref x,ref y);
FindFunction(img, x, y, out Rad, out Alfa, out Koef);
for(int i=0;i<length;i++)
{
rad[i] = SplineResizeBitmap.SplineInterpolation(ref Koef, 360.0 / length * i);
}
}
public static void FindFunction(Image img, int x, int y, out double[] rad, out double[] alfa, out double[] koef)
{
int ch = 0;
for (int i = 0; i < img.Width; i++)
{
for (int j = 0; j < img.Height; j++)
{
if (img.GetPixel(i, j).R == 255 && img.GetPixel(i, j).G == 0)
{
ch++;
}
}
}
rad = new double[ch];
alfa = new double[ch];
double l;
double alf;
ch = 0;
for (int i = 0; i < img.Width; i++)
{
for (int j = 0; j < img.Height; j++)
{
if (img.GetPixel(i, j).R == 255 && img.GetPixel(i, j).G == 0)
{
l = Math.Sqrt((x - i) * (x - i) + (y - j) * (y - j));

if (j - y >= 0)
alf = Math.Atan2((j - y), (i - x)) * (180.0 / Math.PI);
else
alf = (360-Math.Atan2(Math.Abs((j - y)), (i - x)) * (180.0 / Math.PI));
rad[ch] = l;
alfa[ch] = alf;
ch++;
}
}
}
koef = new double[] { };
SplineResizeBitmap.BuildLinearSpline(alfa, rad, ch, ref koef);

}
}
}
Работа с гистограммой
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
namespace FFTLibrary
{
public class ImageManager
{
/// <summary>
/// Preparing picture for FFT
/// </summary>
/// <param name="bitm">Bitmap of the picture to prepare</param>
/// <returns>Prepared Bitmap</returns>
public void GetHistogram(Image picture, out Image histogram)
{
GrayScale.ToGray(picture);
picture = SplineResizeBitmap.Resizing(picture, 256, 256);
double[][] piccolor = new double[picture.Height][];
for (int i = 0; i < piccolor.Length; i++)
piccolor[i] = new double[picture.Width];
for (int i = 0; i < piccolor.Length; i++)
for (int j = 0; j < piccolor[0].Length; j++)
piccolor[i][j] = (picture.GetPixel(i, j).R + picture.GetPixel(i, j).G + picture.GetPixel(i, j).B) / 3;
HistogramFromBytes(piccolor, out histogram, picture.Width, picture.Height);
}
/// <summary>
/// Prepating picture to FFT
/// </summary>
/// <param name="picture">Picture to prepare</param>
private void ProcessPicture(Image picture, out Image histogram)
{
GrayScale.ToGray(picture);
picture = SplineResizeBitmap.Resizing(picture, 1024, 1024);
GetHistogram(picture, out histogram);
}
/// <summary>
/// Main method allowing to compare two pictures and to receive result in percents.
/// </summary>
/// <param name="pattern">Pattern picture.</param>
/// <param name="picture">Picture to compare with pattern.</param>
/// <param name="percent">Difference in percents.</param>
public void ComparePictures(Image pattern, Image picture, out Image patternHistogram, out Image pictureHistogram, uint percent)
{
ProcessPicture(pattern, out patternHistogram);
ProcessPicture(picture, out pictureHistogram);
percent = 0;
}
/// <summary>
/// Get Histogram for given picture
/// </summary>
private void HistogramFromBytes(double[][] data, out Image histogram, int height, int width)
{
histogram = new Image(width, height);
double[][] hist2;
double[][] hist;
new FastFourierTransform().GetHistogram(data, width, height, false, out hist2);
new FastFourierTransform().HistogramToLog(hist2, out hist);
double maxval = hist[0][0];
for (int i = 0; i < histogram.Height; i++)
for (int j = 0; j < histogram.Width; j++)
if (hist[i][j] > maxval)
maxval = hist[i][j];
if (maxval == 0)
maxval = 1;
for (int i = 0; i < histogram.Height; i++)
for (int j = 0; j < histogram.Width; j++)
{
histogram.SetPixel(i, j, Color.FromArgb((int)(hist[i][j] / maxval * 255), (int)(hist[i][j] / maxval * 255), (int)(hist[i][j] / maxval * 255)));
}
}
}
}
using System;
using System.Drawing;
using System.Collections.Generic;
using System.Text;
using FFTLibrary;
using System.Windows.Forms;
namespace FFTLibrary
{
public class BSCV
{
private double c1, c2, c3;
public double Percent1
{
set { c1 = value; }
}
public double Percent2
{
set { c2 = value; }
}
public double Percent3
{
set { c3 = value; }
}
public BSCV()
{
c1 = c2 = 0.3;
c3 = 0.4;
}
public static FFTLibrary.Image Filter(FFTLibrary.Image bmp, int Rad)
{
FFTLibrary.Image outbitmap = new FFTLibrary.Image(bmp.Width, bmp.Height);
for (int i = 0; i < bmp.Width; i++)
{
for (int j = 0; j < bmp.Height; j++)
{
outbitmap.SetPixel(i, j, Color.FromArgb(255, 255, 255));
}
}
for (int i = 0; i < bmp.Height; i++)
{
for (int j = 0; j < bmp.Width; j++)
{
if (bmp.GetPixel(j, i).R == 255 && bmp.GetPixel(j, i).G == 0)
{
int ch = 0;
for (int ii = i - Rad; ii <= i + Rad; ii++)
{
for (int jj = j - Rad; jj <= j + Rad; jj++)
{
if (ii < bmp.Height && ii > 0 && jj < bmp.Width && jj > 0 && (jj != j || ii != i))
{
if (bmp.GetPixel(jj, ii).R == 255 && bmp.GetPixel(jj, ii).G == 0)
{
if (jj != j || ii != i)
{
ch++;
}
}
}
}
}
if (ch > 1)
{
outbitmap.SetPixel(j, i, Color.FromArgb(255, 0, 0));
}
}
}
}
//green
for (int i = 0; i < bmp.Height; i++)
{
for (int j = 0; j < bmp.Width; j++)
{
if (bmp.GetPixel(j, i).R == 0 && bmp.GetPixel(j, i).G == 255)
{
int ch = 0;
for (int ii = i - Rad; ii <= i + Rad; ii++)
{
for (int jj = j - Rad; jj <= j + Rad; jj++)
{
if (ii < bmp.Height && ii > 0 && jj < bmp.Width && jj > 0 && (jj != j || ii != i))
{
if (bmp.GetPixel(jj, ii).R == 0 && bmp.GetPixel(jj, ii).G == 255)
{
if (jj != j || ii != i)
{
ch++;
}
}
}
}
}
if (ch > 1)
{
outbitmap.SetPixel(j, i, Color.FromArgb(0, 255, 0));
}
}
}
}
return outbitmap;
}

public static double SquareVer(FFTLibrary.Image Img1,FFTLibrary.Image Img2, int eps, int eps2)
{
FFTLibrary.Image filled_img1 = FillObject(Img1, eps, eps2);
FFTLibrary.Image filled_img2 = FillObject(Img2, eps, eps2);
Int64 ch = 0;
for (int x = 0; x < filled_img1.Width; x++)
{
for (int y = 0; y < filled_img1.Height; y++)
{
if (filled_img1.GetPixel(x, y) == filled_img2.GetPixel(x, y))
{
ch++;
}
}
}
return (double)(ch) / (double)(filled_img1.Width * filled_img1.Height);
}
public static FFTLibrary.Image FillObject(FFTLibrary.Image Img1, int epsilon, int epsilon2)
{
FFTLibrary.Image result = new FFTLibrary.Image(Img1.Width, Img1.Height);
FFTLibrary.Border brd = new Border(Img1, epsilon, true);
FFTLibrary.Image img = new FFTLibrary.Image(brd.toBitmap());
//img = Filter(img, epsilon2);

for (int x = 0; x < img.Width; x++)
{
for (int y = 0; y < img.Height; y++)
{

if ((img.GetPixel(x, y).R == 255 && img.GetPixel(x, y).B == 0) || (img.GetPixel(x, y).G == 255 && img.GetPixel(x, y).B == 0))
{
Color srchc = new Color();
if (img.GetPixel(x, y).R == 255 && img.GetPixel(x, y).B == 0)
{
srchc = Color.FromArgb(0,255,0);
}
else
{
srchc = Color.FromArgb(255, 0, 0);
}
result.SetPixel(x, y, Color.Black);
y++;
while (y < img.Height && img.GetPixel(x, y) != srchc)
{
result.SetPixel(x, y, Color.Black);
y++;
}
while (y < img.Height && img.GetPixel(x, y) == srchc)
{
result.SetPixel(x, y, Color.Black);
y++;
}
}
else
{
result.SetPixel(x, y, Color.White);
}

}
}
//------------------------------------------
brd = new Border(Img1, epsilon, false);
img = new FFTLibrary.Image(brd.toBitmap());
for (int y = 0; y < img.Height; y++)
{
for (int x = 0; x < img.Width; x++)
{
if ((img.GetPixel(x, y).R == 255 && img.GetPixel(x, y).B == 0) || (img.GetPixel(x, y).G == 255 && img.GetPixel(x, y).B == 0))
{
Color srchc = new Color();
if (img.GetPixel(x, y).R == 255 && img.GetPixel(x, y).B == 0)
{
srchc = Color.FromArgb(0, 255, 0);
}
else
{
srchc = Color.FromArgb(255, 0, 0);
}
result.SetPixel(x, y, Color.Black);
x++;
while (x < img.Width && img.GetPixel(x, y) != srchc)
{
result.SetPixel(x, y, Color.Black);
x++;
}
while (x < img.Width && img.GetPixel(x, y) == srchc)
{
result.SetPixel(x, y, Color.Black);
x++;
}
}
else
{
// result.SetPixel(x, y, Color.White);
}
}
}
return result;
}
}
}
Заключение
Способы обработки мультимедийных данных являются актуальной областью научных исследований. В последнее время, в связи с появлением множества приложений, использующих мультимедийный контент, таких как социальные сети, различные службы обмена данными через интернет, эффективные способы сжатия и обработки данных приобретают особую актуальность. В опубликованном недавно отчете фирма TeleGeography Research, наблюдающая за Интернетом, утверждает, что за 12-месячный период с середины 2007 по середину 2008 года международный Интернет-трафик вырос более чем на 53%, однако емкость Интернета растет еще быстрее. За предыдущий год рост Интернет-трафика составил 61%.
Повышение емкости Интернет-магистралей опережает рост трафика, что приводит к снижению уровня загрузки многих из них. Однако такой подход не может быть единственным. Одним из способов снижения нагрузки на передающие каналы является сжатие передаваемых данных.
В данном докладе представлено описание предлагаемых новых способов обработки изображений: растяжение и сжатие, сглаживание помех, детектор движения. Эти проблемы могут быть решены различными способами, начиная от простой работы с пикселями изображения и заканчивая применением математических моделей, таких как быстрое преобразование Фурье, разложение в полином Лагранжа или в сплайн.

Список литературы
A. B. Watson “The Cortex Transform: Rapid Computation of Simulated Neural Images” // CVGIP, 39 1987 pp. 311-327.
Ajeetkumar Gaddipatti, Raghu Machiraju, Roni Yagel "Steering Image Generation with Wavelet Based Perceptual Metric" // EuroGraphics-97, Volume 16, Number 3, pp.C-241 – C-251.
Ardizzone, E., La Cascia, M., and Molinelli, D., Motion and Color Based Video Indexing and Retrieval, Proc. Int. Conf. on Pattern Recognition, (ICPR-96), Wien, Austria, Aug. 1996.
Ardizzone, E., La Cascia, M., Vito di Gesu, and Valenti, C.,Content Based Indexing of Image and Video Databases by Global and Shape Features, 1996.
Baigarova, N. S. and Bukhshtab, Yu. A., Some Principles of Organization for Searching through Video Data, Programming and Computer Software, Vol. 25, Nu. 3, 1999, pp. 165-170
Baron, J. L., Fleet, D. J., and Beauchemin, S. S., Performances of optical flow techniques. 1994. 
Carson, C. and Ogle, V.E., Storage and Retrieval of Feature Data for a Very Large Online Image Collection. 1996.
Carson, C., Belongie, S., Greenspan, H., and Malik, J., Color- and Texture-Based Image Segmentation Using EM and Its application to Image Querying and Classification. 1997. 
Charles Jacobs, Adam Finkelstein, David Salesin "Fast Multiresolution Image Quering" // SIGGRAPH-95 Proceedings, pp 277-286.
Chrictel, M., Stevens, S., Kanade, T., Mauldin, M., Reddy, R., and Wactlar, H., Techniques for the Creation and Exploration of Digital Video Libraries, Multimedia Tools and Applications, Boston: Kluwer, 1996, vol. 2.
David Travis "Effective Color Displays. Theory and practice" // pp.89-100; Academic Press 1991 ISBN 0-12-697690-2.
E. Kopylov, A. Khodulev, V. Volevich “The comparison of Illumination Maps Techniques in Computer Graphics Software” // 8-я международная конференция по компьютерной графике и визуализации ГрафиКон-98 (Труды конференции) ISBN 5-89209-294-1-ВМК МГУ 1998 стр. 146-153
G.C. Higgins “Image Quality Criteria” // Journal of Applied Photographic Engeneering. 1977 3(2), pp. 53-60
Horn, B.K.P. and B.G.Schunk, Determining optical flow, Artificial intelligence, 17,1981.
J.L. Mannos, D.J. Sakrison "The Effects of Visual Fidelity Criterion on the Encoding of Images" // IEEE Transactions on Information Theory IT-20(4) 1974, pp. 525-536.
Jain, R. and Gupta, A., Visual Information Retrieval, Communications of the ACM, 1997, vol. 40, no. 5.
Jain, R. and Gupta, A., Computer Vision and Visual Information Retrieval, 1996
Jain, R., Pentland, A.P., Petkovic, D., Workshop Report: NSF – ASPA Workshop on Visual Information Management Systems, 1995.
Laszlo Neumann, Kresimir Matkovic, Werner Purgathofer “Perception Based Color Image Difference” // EuroGraphics’98 Vol. 17(98) #3 pp.233-241.
Looney, C.G. ,"Pattern Recognition Using Neural Networks. Theory and Algorithms for Engineers and Scientists". Oxford University Press, 1997.
Mahesh Ramasubramanian, Sumanta Pattanaik, Donald Greenberg "A Perceptually Based Physical Error Metric for Realistic Image Sythesis" // SIGGRAPH-99 Proceedings.
Rowley, H.A., Baluja, S., and Kanade, T., Neural Network-Based Face Detection, IEEE Transactions on Pattern Analysis and Machine Intelligence, 1998.
Shapiro, Stockmann "ComputerVision" // Aug. 99, Chapter 8
Smith, J.R. and Shih-Fu Chang. Automated Binary Texture Feature Sets for Image Retrieval. 1996.
Smith, J.R. and Shih-Fu Chang. VisualSEEk: a fully automated content-based image query system.
Smith, J.R. and Shih-Fu Chang. Tools and Techniques for Color Image Retrieval. 1996. 
Smith, J.R. and Shih-Fu Chang. Automated Image Retrieval Using Color and Texture. 1995.
Sobel, I., An isotropic image gradient operator. Machine Vision for Three-Dimensional Scenes, pp.376-379. Academic Press, 1990
Sung, K-K. and Poggio, T., Example-Based Learning for View-based Human Face Detection. A.I. Memo No. 1521, December 1994.
Wactlar, H.D., Kanade, T., Smith, M.A., and Stevens, S.M., Intelligent Access to Digital Video: Informedia Project, 1996.
Wei-Ying Ma, NETRA: A Toolbox for Navigating Large Image Databases. 1997.
Балакришнан С.Н., Тепли Б.Д. Классификация и оценка нескольких целей с применением способов кластерного анализа // Аэрокосмическая техника. – 1990. - № 10. - С. 24-33. [(Journal of Guidanse, Control, and Dynamics,1990 No. 1, pp 121- 127, перевод В.В. Кузнецова).
Бейтс Р., Мак-Доннел М. Восстановление и реконструкция изображений. - М.: Мир, 1989. - 336 с.
Винтаев В.Н., Гамидов В.В., Исмаилов К.Х. Задача цифровой нормализации матриц фотоприемных устройств. Сообщения НПОКИ №1. – Баку: Изд-во «ЭЛМ», 1984. - С. 38-51.
Н.С. Байгарова, Ю.А. Бухштаб Проект «Кинолетопись России» : представление и поиск видеоинформации. Труды I Всероссийской конференции «Электронные библиотеки», Санкт-Петербург, 18-22 октября 1999 г., стр. 209-215
Н.С. Байгарова, Ю.А. Бухштаб, Н.Н. Евтеева Организация электронной библиотеки видеоматериалов Препринт Института прикладной математики им. М.В. Келдыша РАН, 2000, N 5
Патрик Э.А. Основы теории распознавания образов. - М.: Советское радио, 1980. - 408 с.
Прэтт У. Цифровая обработка изображений.- М.: Мир, 1982. - Кн.2. - 790 с.
Тихонов В.И., Кульман Н.К. Нелинейная фильтрация и квазикогерентный прием сигналов. - М.: Советское радио, 1975. - 704 с.
90

Список литературы [ всего 39]

Список литературы
1.A. B. Watson “The Cortex Transform: Rapid Computation of Simulated Neural Images” // CVGIP, 39 1987 pp. 311-327.
2.Ajeetkumar Gaddipatti, Raghu Machiraju, Roni Yagel "Steering Image Generation with Wavelet Based Perceptual Metric" // EuroGraphics-97, Volume 16, Number 3, pp.C-241 – C-251.
3.Ardizzone, E., La Cascia, M., and Molinelli, D., Motion and Color Based Video Indexing and Retrieval, Proc. Int. Conf. on Pattern Recognition, (ICPR-96), Wien, Austria, Aug. 1996.
4. Ardizzone, E., La Cascia, M., Vito di Gesu, and Valenti, C.,Content Based Indexing of Image and Video Databases by Global and Shape Features, 1996.
5. Baigarova, N. S. and Bukhshtab, Yu. A., Some Principles of Organization for Searching through Video Data, Programming and Computer Software, Vol. 25, Nu. 3, 1999, pp. 165-170
6.Baron, J. L., Fleet, D. J., and Beauchemin, S. S., Performances of optical flow techniques. 1994.
7. Carson, C. and Ogle, V.E., Storage and Retrieval of Feature Data for a Very Large Online Image Collection. 1996.
8.Carson, C., Belongie, S., Greenspan, H., and Malik, J., Color- and Texture-Based Image Segmentation Using EM and Its application to Image Querying and Classification. 1997.
9.Charles Jacobs, Adam Finkelstein, David Salesin "Fast Multiresolution Image Quering" // SIGGRAPH-95 Proceedings, pp 277-286.
10. Chrictel, M., Stevens, S., Kanade, T., Mauldin, M., Reddy, R., and Wactlar, H., Techniques for the Creation and Exploration of Digital Video Libraries, Multimedia Tools and Applications, Boston: Kluwer, 1996, vol. 2.
11.David Travis "Effective Color Displays. Theory and practice" // pp.89-100; Academic Press 1991 ISBN 0-12-697690-2.
12.E. Kopylov, A. Khodulev, V. Volevich “The comparison of Illumination Maps Techniques in Computer Graphics Software” // 8-я международная конференция по компьютерной графике и визуализации ГрафиКон-98 (Труды конференции) ISBN 5-89209-294-1-ВМК МГУ 1998 стр. 146-153
13.G.C. Higgins “Image Quality Criteria” // Journal of Applied Photographic Engeneering. 1977 3(2), pp. 53-60
14. Horn, B.K.P. and B.G.Schunk, Determining optical flow, Artificial intelligence, 17,1981.
15.J.L. Mannos, D.J. Sakrison "The Effects of Visual Fidelity Criterion on the Encoding of Images" // IEEE Transactions on Information Theory IT-20(4) 1974, pp. 525-536.
16. Jain, R. and Gupta, A., Visual Information Retrieval, Communications of the ACM, 1997, vol. 40, no. 5.
17.Jain, R. and Gupta, A., Computer Vision and Visual Information Retrieval, 1996
18.Jain, R., Pentland, A.P., Petkovic, D., Workshop Report: NSF – ASPA Workshop on Visual Information Management Systems, 1995.
19.Laszlo Neumann, Kresimir Matkovic, Werner Purgathofer “Perception Based Color Image Difference” // EuroGraphics’98 Vol. 17(98) #3 pp.233-241.
20. Looney, C.G. ,"Pattern Recognition Using Neural Networks. Theory and Algorithms for Engineers and Scientists". Oxford University Press, 1997.
21.Mahesh Ramasubramanian, Sumanta Pattanaik, Donald Greenberg
"A Perceptually Based Physical Error Metric for Realistic Image Sythesis" // SIGGRAPH-99 Proceedings.
22. Rowley, H.A., Baluja, S., and Kanade, T., Neural Network-Based Face Detection, IEEE Transactions on Pattern Analysis and Machine Intelligence, 1998.
23.Shapiro, Stockmann "ComputerVision" // Aug. 99, Chapter 8
24.Smith, J.R. and Shih-Fu Chang. Automated Binary Texture Feature Sets for Image Retrieval. 1996.
25. Smith, J.R. and Shih-Fu Chang. VisualSEEk: a fully automated content-based image query system.
26. Smith, J.R. and Shih-Fu Chang. Tools and Techniques for Color Image Retrieval. 1996.
27.Smith, J.R. and Shih-Fu Chang. Automated Image Retrieval Using Color and Texture. 1995.
28. Sobel, I., An isotropic image gradient operator. Machine Vision for Three-Dimensional Scenes, pp.376-379. Academic Press, 1990
29. Sung, K-K. and Poggio, T., Example-Based Learning for View-based Human Face Detection. A.I. Memo No. 1521, December 1994.
30.Wactlar, H.D., Kanade, T., Smith, M.A., and Stevens, S.M., Intelligent Access to Digital Video: Informedia Project, 1996.
31.Wei-Ying Ma, NETRA: A Toolbox for Navigating Large Image Databases. 1997.
32.Балакришнан С.Н., Тепли Б.Д. Классификация и оценка нескольких целей с применением способов кластерного анализа // Аэрокосмическая техника. – 1990. - № 10. - С. 24-33. [(Journal of Guidanse, Control, and Dynamics,1990 No. 1, pp 121- 127, перевод В.В. Кузнецова).
33.Бейтс Р., Мак-Доннел М. Восстановление и реконструкция изображений. - М.: Мир, 1989. - 336 с.
34.Винтаев В.Н., Гамидов В.В., Исмаилов К.Х. Задача цифровой нормализации матриц фотоприемных устройств. Сообщения НПОКИ №1. – Баку: Изд-во «ЭЛМ», 1984. - С. 38-51.
35.Н.С. Байгарова, Ю.А. Бухштаб Проект «Кинолетопись России» : представление и поиск видеоинформации. Труды I Всероссийской конференции «Электронные библиотеки», Санкт-Петербург, 18-22 октября 1999 г., стр. 209-215
36. Н.С. Байгарова, Ю.А. Бухштаб, Н.Н. Евтеева Организация электронной библиотеки видеоматериалов Препринт Института прикладной математики им. М.В. Келдыша РАН, 2000, N 5
37.Патрик Э.А. Основы теории распознавания образов. - М.: Советское радио, 1980. - 408 с.
38.Прэтт У. Цифровая обработка изображений.- М.: Мир, 1982. - Кн.2. - 790 с.
39.Тихонов В.И., Кульман Н.К. Нелинейная фильтрация и квазикогерентный прием сигналов. - М.: Советское радио, 1975. - 704 с.
Очень похожие работы
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00354
© Рефератбанк, 2002 - 2024