Описание на методите за сравняване на изображения...

36
ОПИСАНИЕ НА МЕТОДИТЕ ЗА СРАВНЯВАНЕ НА ИЗОБРАЖЕНИЯ EVALUATESCORE И ISSIMILAR В ORACLE MULTIMEDIA Доц. д-р Цветанка Георгиева-Трифонова

Upload: tsvetanka-georgieva

Post on 02-Aug-2015

325 views

Category:

Data & Analytics


0 download

TRANSCRIPT

Page 1: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ОПИСАНИЕ НА МЕТОДИТЕ ЗА СРАВНЯВАНЕ

НА ИЗОБРАЖЕНИЯ EVALUATESCORE И

ISSIMILAR В ORACLE MULTIMEDIA

Доц. д-р Цветанка Георгиева-Трифонова

Page 2: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ОПИСАНИЕ НА МЕТОДИТЕ EVALUATESCORE И ISSIMILAR –

СЪДЪРЖАНИЕ

Извличане, базирано съдържание (content-based retrieval)

Методът evaluateScore()

Общ вид

Параметри

Върната стойност

Използване на метода evaluateScore()

Примери

Методът isSimilar()

Общ вид

Параметри

Върната стойност

Използване на метода isSimilar()

Примери

Примерни резултати

2 2 Цветанка Георгиева Моделиране на информационни системи

Page 3: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ИЗВЛИЧАНЕ, БАЗИРАНО НА СЪДЪРЖАНИЕ

Извличането, базирано на съдържание

осигурява по-голяма гъвкавост и практичност;

е полезно за осигуряване на възможност за изпълняване

на заявки въз основа на атрибути като текстура и форма,

които е трудно да бъдат представени чрез използването

на ключови думи;

позволява изпълняване на заявки от вида: „да се намерят

предмети, които изглеждат като даден предмет“.

3 3 Цветанка Георгиева Моделиране на информационни системи

Page 4: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ИЗВЛИЧАНЕ, БАЗИРАНО НА СЪДЪРЖАНИЕ

Примери за приложения за бази от данни, в които

извличането, базирано на съдържание, е полезно:

Търговски марки, авторски права и емблеми;

Художествени галерии и музеи;

Търговия;

Мода и моден дизайн;

Интериорен дизайн и декорация.

4 4 Цветанка Георгиева Моделиране на информационни системи

Page 5: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ИЗВЛИЧАНЕ, БАЗИРАНО НА СЪДЪРЖАНИЕ

Системата за извличане, базирано на съдържание

обработва информацията, съдържаща се в данните за

изображението и създава описание на съдържанието му

по отношение на визуални атрибути;

изпълнява всички заявки с помощта на това описание, а

не със самото изображение.

Всяко изображение, въведено в базата от данни

се анализира;

се съхранява компактно представяне на неговото

съдържание в характеризиращ вектор (feature vector) или

подпис (signature).

5 5 Цветанка Георгиева Моделиране на информационни системи

Page 6: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ОБЩ ВИД

evaluateScore(sig1 IN ORDImageSignature,

sig2 IN ORDImageSignature,

weights IN VARCHAR2)

RETURN FLOAT;

Този метод на типа ORDImageSignature оценява

разстоянието между два подписа на изображения въз

основа на:

зададени атрибути;

тегла на атрибути.

6 6 Цветанка Георгиева Моделиране на информационни системи

Page 7: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ПАРАМЕТРИ

sig1

подпис на изображение;

sig2

подпис на изображение;

weights

низ, състоящ се от имена на атрибути и съответните им

стойности между 0.0 и 1.0;

сравняваните атрибути се асоциират с теглата,

определени от потребителя и оказват влияние върху

извършаване на сравнението;

атрибутите, които не са зададени, имат стойност 0.0 по

подразбиране.

7 7 Цветанка Георгиева Моделиране на информационни системи

Page 8: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ПАРАМЕТРИ

weights

Стрингът може да съдържа всички или някои от

атрибутите.

Стойността, асоциирана с даден атрибут, задава неговата

относителна важност при определяне на разстоянието

между подписите.

Един атрибут със стойност 0.0 се игнорира, а атрибут със

стойност 1.0 е от най-голямо значение.

Предоставените тегла се нормализират преди обработка,

така че тяхната сума да е 1.0, като се запазват

първоначалните им съотношения.

Поне един атрибут трябва да има стойност по-голяма от

0.0.

8 8 Цветанка Георгиева Моделиране на информационни системи

Page 9: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ПАРАМЕТРИ

weights

Атрибутите са следните:

color: стойност между 0.0 и 1.0, която определя

важността на характеристиката цвят;

texture: стойност между 0.0 и 1.0, която определя

важността на характеристиката текстура;

shape: стойност между 0.0 и 1.0, която определя

важността на характеристиката форма;

location: стойност между 0.0 и 1.0, която определя

важността на местоположението на областите в

изображението.

Теглото на местоположението не може да бъде

зададено самостоятелно, трябва да се използва

заедно с друг(и) атрибут(и).

9 9 Цветанка Георгиева Моделиране на информационни системи

Page 10: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ВЪРНАТА СТОЙНОСТ

Върнатата от функцията стойност е от тип FLOAT между 0.0 и

100.0, където:

0.0 означава, че изображенията са идентични и

100.0 означава, че са напълно различни.

10 10 Цветанка Георгиева Моделиране на информационни системи

Page 11: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ИЗПОЛЗВАНЕ

Методът се изпълнява за два подписа, не за индекси,

дефинирани в таблицата.

За да се изпълни методът evaluateScore() успешно, е

необходимо обектите от тип ORDImage да бъдат:

инициализирани, добавени в таблицата и да имат

генерирани подписи или

създадени чрез използване на временни LOBs и да имат

генерирани подписи.

11 11 Цветанка Георгиева Моделиране на информационни системи

Page 12: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ПРИМЕР ЗА

ПРЕДВАРИТЕЛНА ПОДГОТОВКА

DECLARE image ORDSYS.ORDImage;

t_image ORDSYS.ORDImage;

image_sig ORDSYS.ORDImageSignature;

BEGIN

-- добавяне на ред в таблицата и инициализиране

INSERT INTO pm.online_media

(product_id, product_photo, product_photo_signature)

VALUES (1910,

ORDSYS.ORDImage.init('FILE',

'MEDIADIR','img1.jpg'),

ORDSYS.ORDImageSignature.init());

COMMIT;

SELECT p.product_photo INTO image

FROM pm.online_media p

WHERE p.product_id = 1910 FOR UPDATE;

12 12 Цветанка Георгиева Моделиране на информационни системи

Page 13: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ПРИМЕР ЗА

ПРЕДВАРИТЕЛНА ПОДГОТОВКА (2)

-- задаване на атрибутите за свойствата на изображение

image.setProperties();

UPDATE pm.online_media p SET p.product_photo = image

WHERE p.product_id = 1910;

COMMIT;

SELECT p.product_photo, p.product_photo_signature

INTO t_image, image_sig

FROM pm.online_media p

WHERE p.product_id = 1910 FOR UPDATE;

-- генериране на подпис

image_sig.generateSignature(t_image);

UPDATE pm.online_media p

SET p.product_photo_signature = image_sig

WHERE product_id = 1910;

COMMIT;

END;

13 13 Цветанка Георгиева Моделиране на информационни системи

Page 14: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ПРИМЕР

Оценяване на разстоянието между два подписа на

изображения

DECLARE t_image ORDSYS.ORDImage;

c_image ORDSYS.ORDImage;

image_sig ORDSYS.ORDImageSignature;

compare_sig ORDSYS.ORDImageSignature;

score FLOAT;

BEGIN

SELECT p.product_photo, p.product_photo_signature

INTO t_image, image_sig

FROM pm.online_media p

WHERE p.product_id = 1910;

SELECT p.product_photo, p.product_photo_signature

INTO c_image, compare_sig

FROM pm.online_media p

WHERE p.product_id = 1940;

14 14 Цветанка Георгиева Моделиране на информационни системи

Page 15: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ EVALUATESCORE() – ПРИМЕР (2)

Оценяване на разстоянието между два подписа на

изображения

-- сравняване на две изображения въз основа на цвета

score:=ORDSYS.ORDImageSignature.evaluateScore(

image_sig,

compare_sig,

'color=1.0, texture=0, shape=0, location=0');

DBMS_OUTPUT.PUT_LINE('Разстоянието е ' || score);

END;

15 15 Цветанка Георгиева Моделиране на информационни системи

Page 16: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ ISSIMILAR() – ОБЩ ВИД

isSimilar(sig1 IN ORDImageSignature,

sig2 IN ORDImageSignature,

weights IN VARCHAR2,

threshold IN FLOAT)

RETURN INTEGER;

Този метод на типа ORDImageSignature сравнява два

подписа на изображения и пресмята разстоянието между тях

въз основа на:

зададени атрибути;

тегла на атрибути;

зададена прагова стойност.

16 16 Цветанка Георгиева Моделиране на информационни системи

Page 17: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ ISSIMILAR() – ПАРАМЕТРИ

sig1

подпис на изображение;

sig2

подпис на изображение;

weights

низ, състоящ се от имена на атрибути и съответните им

стойности между 0.0 и 1.0;

сравняваните атрибути се асоциират с теглата,

определени от потребителя и оказват влияние върху

извършаване на сравнението;

атрибутите, които не са зададени, имат стойност 0.0 по

подразбиране.

17 17 Цветанка Георгиева Моделиране на информационни системи

Page 18: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ ISSIMILAR() – ПАРАМЕТРИ

weights

Стрингът може да съдържа всички или някои от

атрибутите.

Стойността, асоциирана с даден атрибут, задава неговата

относителна важност при определяне на разстоянието

между подписите.

Един атрибут със стойност 0.0 се игнорира, а атрибут със

стойност 1.0 е от най-голямо значение.

Предоставените тегла се нормализират преди обработка,

така че тяхната сума да е 1.0, като се запазват

първоначалните им съотношения.

Поне един атрибут трябва да има стойност по-голяма от

0.0.

18 18 Цветанка Георгиева Моделиране на информационни системи

Page 19: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ ISSIMILAR() – ПАРАМЕТРИ

weights

Атрибутите са следните:

color: стойност между 0.0 и 1.0, която определя

важността на характеристиката цвят;

texture: стойност между 0.0 и 1.0, която определя

важността на характеристиката текстура;

shape: стойност между 0.0 и 1.0, която определя

важността на характеристиката форма;

location: стойност между 0.0 и 1.0, която определя

важността на местоположението на областите в

изображението.

Теглото на местоположението не може да бъде

зададено самостоятелно, трябва да се използва

заедно с друг(и) атрибут(и).

19 19 Цветанка Георгиева Моделиране на информационни системи

Page 20: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ ISSIMILAR() – ПАРАМЕТРИ

threshold

праговата стойност, с която претеглената сума от

разстоянията трябва да се сравни;

ако претеглената сума е по-малка или равна на праговата

стойност, изображенията се считат за подобни;

обхватът на този параметър е от 0.0 до 100.0.

20 20 Цветанка Георгиева Моделиране на информационни системи

Page 21: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ ISSIMILAR() – ВЪРНАТА СТОЙНОСТ

Ако разстоянието е по-малко от праговата стойност, се

връща стойност 1;

В противен случай се връща стойност 0.

21 21 Цветанка Георгиева Моделиране на информационни системи

Page 22: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ ISSIMILAR() – ИЗПОЛЗВАНЕ

Този метод може да бъде използван за сравняване на два

подписа, които не се съхраняват в базата от данни.

Изпълнява се за два подписа, не за индекси, дефинирани в

таблицата.

За да се изпълни методът isSimilar() успешно, е

необходимо обектите от тип ORDImage да бъдат:

инициализирани, добавени в таблицата и да имат

генерирани подписи или

да бъдат създадени чрез използване на временни LOBs и

да имат генерирани подписи.

22 22 Цветанка Георгиева Моделиране на информационни системи

Page 23: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ ISSIMILAR() – ПРИМЕР

Сравняване на две изображения въз основа на цвета.

Изображенията се разглеждат като подобни, ако

разстоянието между тях е не повече от 10.

DECLARE image_sig1 ORDSYS.ORDImageSignature;

image_sig2 ORDSYS.ORDImageSignature;

value INTEGER;

BEGIN

SELECT product_photo_signature INTO image_sig1

FROM pm.online_media WHERE product_id = 1910;

SELECT product_photo_signature INTO image_sig2

FROM pm.online_media WHERE product_id = 1940;

23 23 Цветанка Георгиева Моделиране на информационни системи

Page 24: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

МЕТОДЪТ ISSIMILAR() – ПРИМЕР (2)

Сравняване на две изображения въз основа на цвета.

Изображенията се разглеждат като подобни, ако

разстоянието между тях е не повече от 10.

-- сравняване на изображенията

value := ORDSYS.ORDImageSignature.isSimilar(

image_sig1,

image_sig2,

'color=1.0,texture=0,shape=0,location=0', 10);

IF value = 1 THEN

DBMS_OUTPUT.PUT_LINE('Изображенията са подобни.');

ELSIF value = 0 THEN

DBMS_OUTPUT.PUT_LINE('Изображенията не са подобни.');

END IF;

END;

24 24 Цветанка Георгиева Моделиране на информационни системи

Page 25: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

1) Нека са дадени изображенията:

Цвят: 1.0

Текстура: 0.0

Форма: 0.0

Местоположение: 0.0

Резултатът е: Разстоянието е 5.21648

25 25 Цветанка Георгиева Моделиране на информационни системи

Page 26: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

1) Нека са дадени изображенията:

Цвят: 1.0

Текстура: 0.0

Форма: 0.0

Местоположение: 1.0

Резултатът е: Разстоянието е 37.6082

26 26 Цветанка Георгиева Моделиране на информационни системи

Page 27: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

2) Нека са дадени изображенията:

Цвят: 1.0

Текстура: 0.0

Форма: 0.0

Местоположение: 0.0

Резултатът е: Разстоянието е 0.0126648

27 27 Цветанка Георгиева Моделиране на информационни системи

Page 28: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

2) Нека са дадени изображенията:

Цвят: 1.0

Текстура: 0.0

Форма: 0.0

Местоположение: 1.0

Резултатът е: Разстоянието е 33.3397

28 28 Цветанка Георгиева Моделиране на информационни системи

Page 29: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

2) Нека са дадени изображенията:

Цвят: 1.0

Текстура: 0.0

Форма: 1.0

Местоположение: 0.0

Резултатът е: Разстоянието е 0.109953

29 29 Цветанка Георгиева Моделиране на информационни системи

Page 30: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

3) Нека са дадени изображенията:

Цвят: 1.0

Текстура: 0.0

Форма: 0.0

Местоположение: 0.0

Резултатът е: Разстоянието е 0.183015

30 30 Цветанка Георгиева Моделиране на информационни системи

Page 31: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

3) Нека са дадени изображенията:

Цвят: 1.0

Текстура: 0.0

Форма: 0.0

Местоположение: 1.0

Резултатът е: Разстоянието е 0.0915077

31 31 Цветанка Георгиева Моделиране на информационни системи

Page 32: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

4) Нека са дадени изображенията:

Цвят: 0.0

Текстура: 1.0

Форма: 0.0

Местоположение: 0.0

Резултатът е: Разстоянието е 1.9516

32 32 Цветанка Георгиева Моделиране на информационни системи

Page 33: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

4) Нека са дадени изображенията:

Цвят: 1.0

Текстура: 1.0

Форма: 0.0

Местоположение: 0.0

Резултатът е: Разстоянието е 43.6258

33 33 Цветанка Георгиева Моделиране на информационни системи

Page 34: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

5) Нека са дадени изображенията:

Цвят: 0.0

Текстура: 0.0

Форма: 1.0

Местоположение: 0.0

Резултатът е: Разстоянието е 21.2991

34 34 Цветанка Георгиева Моделиране на информационни системи

Page 35: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ПРИМЕРНИ РЕЗУЛТАТИ

5) Нека са дадени изображенията:

Цвят: 0.0

Текстура: 0.0

Форма: 1.0

Местоположение: 1.0

Резултатът е: Разстоянието е 10.8659

35 35 Цветанка Георгиева Моделиране на информационни системи

Page 36: Описание на методите за сравняване на изображения evaluateScore и isSimilar в Oracle Multimedia

ОПИСАНИЕ НА МЕТОДИТЕ IMGSIMILAR И IMGSCORE

Всички методи на ORDImageSignature и

ORDImageIndex не се препоръчват от версия Oracle

Multimedia 11g.

36 36 Цветанка Георгиева Моделиране на информационни системи