CBIR: Content Based Image Retrieval

بازیابی تصویر محتوا محور

CBIR: Content Based Image Retrieval

بازیابی تصویر محتوا محور

مقدمه ای برای یادگیری عمیق

ما بعضا در مورد مفهوم ادراک فکر کرده ایم یعنی اینکه چگونه مغز ما اشیایی را که می بینیم درک می کند؟ چگونه تفاوت بین گربه و سگ را می داند؟ چگونه می توانیم مردم را از یکدیگر جدا و شناسایی کنیم؟ مطلب شگفت انگیز این است که چگونه مغز انسان پس از سالها که از دیدن یک شخص که سالیان متمادی از آخرین دیدار با او گذشته، مجددا او را شناسایی می کند؟ اما امروزه فناوری هایی وجود دارد که می تواند این کار را همانند یک انسان برای درک اشیا انجام دهد. به عنوان مثال، آیا سیستم قفل کردن تشخیص چهره آیفون X. شگفت انگیز نیست؟ برنامه های کاربردی زیادی وجود دارد که از این تکنولوژی استفاده می کنند. هنگامی که ما عمیقتر به این برنامه ها نگاه می کنیم متوجه می شویم که از شبکه های عصبی استفاده می نمایند به طور خاص، مردم از تکنیک مبتنی بر شبکه عصبی که یادگیری عمیق نامیده می شود برای این منظور استفاده می نمایند.

هدف از ارائه این مطلب، ارائه یک نظریه مفهومی اساسی برای تکنیک یادگیری عمیق است که از یک شبکه عصبی آغاز می شود، چه شرایطی با آن همراه است، چگونه ما یک مدل ساده شبکه عصبی را بسازیم و چه تکنیک هایی عموما در یک شبکه عصبی عمیق برای بهینه سازی مدل های پیش بینی استفاده می شود. در اینجا همه شرایطی که می تواند در هنگام کار در فضای آموزشی برای  یادگیری عمیق توسط ماشین انجام شود بیان شده است.

 

آموزش عمیق چیست؟

آموزش عمیق یکی از آن تکنیک های مورد استفاده در یادگیری ماشین برای تشخیص الگو است. این یکی از رایج ترین روش ها در ساختن AI در سالهای اخیر است. به طور معمول، یک شبکه عصبی عمیق (DNN) چیزی جز یک شبکه عصبی چند لایه نیست، یعنی لایه ها پشت سر هم برای شناسایی الگوها در داده ها مورد استفاده قرار می گیرند. یک زیبایی این روش این است که وقتی ما از لایه ورودی به سمت لایه های پنهان و لایه خروجی حرکت می کنیم، اندازه الگوهای شناسایی شده بزرگتر و بزرگتر می شود و بنابراین در پیش بینی اشیاء در لایه نهایی کمک می کند. این فرایند با مثال زیر توضیح داده شده است.

فرآیند شناسایی چهره انسان در یک تصویر را در نظر بگیرید. DNN با شناسایی بخش ها شروع می شود، اغلب لبه هایی مانند نوار افقی تیره، نوارهای طولانی عمودی و شکل های دور تاریک. در لایه بعدی، شبکه سعی می کند ارتباط بین این لبه ها را از لایه قبلی پیدا کند و الگوهای بیشتری مانند ابرو، چشم، بینی و غیره را نشان می دهد. در نهایت، لایه نهایی شبکه قادر خواهد بود چهره ای از یک تصویر را با استفاده از تمام این ویژگی های شناسایی شده در لایه های قبلی شناسایی کند. این در تصویر زیر نشان داده شده است. بنابراین، همانطور که ما در یک شبکه عصبی به جلو حرکت می کنیم، اندازه الگوهای مشخص شده افزایش می یابد و در نهایت می توانیم اشیا را شناسایی کنیم.

 

 

 

 

 

 

برنامه های اصلی برای یادگیری عمیق عبارتند از:

1- طبقه بندی تصویر (شبکه عصبی مصنوعی (CNN) به طور کلی استفاده می شود)

2- طبقه بندی متن (شبکه عصبی مجدد (RNN) به طور کلی استفاده می شود)

3- پردازش گفتار (معمولا از LSTM استفاده می شود)

توضیح برای هر یک از این نوع شبکه های عصبی از حوصله این گفتار خارج است و در مقالات جداگانه قرارمی گیرد.

 

چرا آموزش عمیق؟


اگر ما به این روش دقیق نگاه کنیم، ممکن است متوجه شویم که این ممکن است روشی باشد که مغز ما قادر به شناسایی اشیاء اطراف ما می باشد. ممکن است این مفهوم اصلی ادراک باشد و این انگیزه شبکه های عصبی عمیق است. ایده کلی این است که بفهمیم که نورونها در مغز ما چگونه الگوها را شناسایی می کنند و کار آنها را تقلید کنیم. نورون ها گره نامیده می شوند و اطلاعات را از یک به دیگری انتقال می دهند. اما تمایز بین یک شبکه عصبی ساده و یک شبکه عصبی عمیق چیست؟ پاسخ آن واضح نیست چون اگر ما معماری، انعطاف پذیری و دقت پیش بینی بین یک شبکه عصبی و یک مدل آموزش عمیق را در نظر بگیریم، مشاهده می کنیم که تفاوت هایی وجود دارد. در مورد شبکه های عصبی متعارف، اغلب هر گره زمانی که ما از یک لایه به سمت دیگر حرکت می کنیم گره ها به هر گره دیگر متصل می شود. در مورد یک شبکه عصبی عمیق، ما می توانیم تعداد گره های شرکت کننده در فرایند تصمیم گیری را محدود کنیم، که مغز ما هم در بیشتر موارد همین کار را انجام می دهد. همچنین، یک شبکه عصبی متعارف بیشتر از روش feed forward برای پیش بینی استفاده می کند. یک شبکه عمیق عصبی از مفهوم انتشاربه عقب (back propagation) در بالای تکنیک feed forward استفاده می کند که از طریق آن می توان خطا را در هر مرحله با به روز رسانی وزن ها در شبکه کاهش داد.

 

چگونه یاد گیری عمیق اجرا می شود؟

معماری:
ساده ترین معماری یک شبکه عمیق عصبی شامل یک لایه ورودی، یک یا چند لایه پنهان و یک لایه خروجی است. هر لایه می تواند حاوی هر تعداد گره باشد. هر گره می تواند به هر گره دیگر در لایه بعدی با وزن مرتبط با آن متصل شود. لایه ورودی چیزی جز لیست گره ها نیست که نشان دهنده مقادیر ویژگی هایی است که برای پیش بینی استفاده می شود. تعداد سطوح در خروجی که برای طبقه بندی استفاده می شود، تعداد گره در لایه خروجی را تعیین می کند. به عنوان مثال، در مورد شناسایی رقوم، خروجی می تواند مقادیر بین 0 تا 9 داشته باشد و بنابراین 10 نود در لایه خروجی وجود دارد.
لایه پنهان می تواند هر تعداد گره داشته باشد و تعداد گره در لایه مخفی بستگی به مقدار ورودی به گره ها و وزن مربوط به آنها دارد. که محاسبات آن نیز نسبتا ساده است

 

 

تابع فعال سازی:

مغز ما به گونه ای کار می کند که وقتی تصور می کنیم یک تصویر وجود دارد، نورون های مشخصی فعال می شوند و نورون های مشخصی فعال نمی شوند. این مکانیسمی است که به انسان کمک می کند گربه ها را به عنوان گربه ها و سگ ها را به عنوان سگ ها شناسایی کند. گرچه آنها بسیاری از ویژگی های مشترک را دارا هستند. این مکانیسم با استفاده از مفهوم تابع فعال سازی در یادگیری عمیق اجرا می شود. یک تابع فعال سازی تعیین می کند که آیا یک گره برای ایجاد پیش بینی باید باشد و یا نباشد. در مراحل اولیه، تابع فعال سازی مورد استفاده معمولا تابع s-shaped tanh بوده است. اما در حال حاضر،  تابع فعال سازی مورد استفاده اغلب reLu(rectified linear unit) است. چندین تابع فعال سازی دیگر هم وجود دارد که می تواند مورد استفاده قرار گیرد.

 

اندازه گیری خطا:

همانطور که در مورد هر الگوریتم یادگیری ماشین، زمانی که معماری یا چارچوب مدل ساخته شد، مدل با استفاده از داده های ورودی آموزش دیده و هدف مدل کاهش هزینه ها یا خطا است. شایع ترین روش اندازه گیری خطا در مدل های آموزشی عمیق MSE(Mean squared error) برای پیش بینی یک متغیر پیوسته و یا اندازه گیری CrossEntropy برای پیش بینی یک متغیر قطعی است.


تکنیک های بهینه سازی:

مسئله اصلی در الگوریتم یادگیری عمیق در شناسایی مقادیر مناسب برای پارامترها (وزن بین لایه ها) برای پیش بینی دقیق است. برای به دست آوردن مقادیر برای پارامترها، شبکه عصبی عمیق با استفاده از داده های آموزشی آموزش داده می شود به طوری که اندازه گیری کلی خطای آن به حداقل مقدار آن نزدیک شود. تکنیک های بهینه سازی چندگانه وجود دارد که می تواند مورد استفاده قرار گیرد که از جمله آن ها شایع ترین شیوه شبیه سازی، شبیه ساز (sgd) و بهینه ساز ADAM می باشد. پس از اتمام آموزش، شبکه عصبی مجموعه ای از مقادیر نهایی برای وزن برای گره ها خواهد داشت. سپس از این وزن ها برای پیش بینی اطلاعات ورودی ناشناخته آینده استفاده می شود.

 

منبع

https://www.linkedin.com/pulse/introduction-deep-learning-renganathan-lalgudi-venkatesan/

 

دیتا ست کتاب گنزالس

نمونه دیگر از دیتا ست ها را می توان در آدرس "http://www.imageprocessingplace.com/root_files_V3/image_databases.htm" مشاهده کرد  که تصاویرمربوط به چهارمین ویرایش پردازش تصویر دیجیتال است که توسط گونزالس و وودز در دو قالب DIP4E Faculty و Student تهیه شده است.

درFaculty  تمام مواد پشتیبانی (به جز راهنمای راه حل ها) برای DIP4E و DIP4E Global در بسته پشتیبانی دانشکده DIP4E  قرار دارد و راهنمای راه حل آن فقط به صورت آنلاین در دسترس است.

در Student تمام مواد پشتیبانی برای DIP4E در بسته پشتیبانی دانشجویی DIP4E قرار دارد. دفترچه راهنمای راه حل هم فقط به صورت آنلاین در دسترس است. در DIP3E شامل: درخواست کتابچه راهنمای کاربر،تصاویر کتاب ، پاورپوینت می باشد. در DIPUM2E برای مباحث پردازش تصویر با استفاده از MATLAB است.


لینک دانلود

توضیحات فارسی

توضیحات انگلیسی

Download

مجموعه تصاویر استاندارد برای تست شامل تصاویر لنا، فلفل، فیلم بردار، دریاچه و ... که همگی با ابعاد 512*512 بوده و قالب آنها هم Tif می باشد.

"Standard" test images (a set of images found frequently in the literature: Lena, peppers, cameraman, lake, etc., all in uncompressed tif format and of the same 512 x 512 size).

Download

تصاویر MPEG7 شامل 1400 تصویر باینری است

MPEG7 CE Shape-1 Part B (database containing 1400 binary shape images).  Learn more about MPEG7.  See how the shapes database is used

light microscopy

مجموعه عالی از تصاویر میکروسکوپ نوری

Light microscopy images (an excellent collection).

microscopy images

تصاویر از انواع میکروسکوپ ها شامل اتمی، نوری و ...

Images from various microscope types, including Atomic Force, Light, Confocal, ESEM, TEM, & others.

MedPix

پایگاه داده تصویری پزشکی (رادیولوژی) با بیش از 20.000 عکس

MedPix--Medical (radiological) image database with more than 20,000 images. Registration is free.

NIX images

تصاویر ناسا مربوط به فضا

NASA image exchange (a comprehensive collection of space and related images).

planet images

مجموعه ای از تصاویر سیارات

NASA planetary photojournal (a collection of planetary images).

NOAA images

مجموعه ای از تصاویر مشاهدات زمین

NOAA photo library (a collection of Earth observation images).

USGS images

تصاویر ماهواره ای از تغییرات زمین

USGS satellite images of Earth changes.

weather sat images

تصاویر ماهواره های هواشناسی

ESO weather satellite images.

Sci World Image Bank

مجموعه ای بزرگ از تصاویر ماهواره ای زمین

Earth Science World Image Bank (A large collection of satellite images)

Faces

پایگاه داده چهره

Face databases.

BIT, U of Bologna

پایگاه داده اثر انگشت

Fingerprint databases.

segmentation dataset

تصاویر تقسیم بندی شده برکلی

Berkeley image segmentation dataset-images and segmentation benchmarks.

aircraft-images

سیگنال هواپیما

Aircraft silhouettes.

Download

پایگاه داده شکل برگ

Leaf shapes database (courtesy of V. Waghmare). Read about the database.

Daimler Database

پایگاه داده تشخیص عابر پیاده دایملر

Daimler Pedestrian Detection Database (a DB of moving people and vehicles).

ISI Databases

تصاویر شبکیه، رادیوگرافی قفسه سینه، تصاویر برای ارزیابی تکنیک های ثبت نام، تصاویر کبدی، اسکن MRI مغز

Image Sciences Institute annotated research data bases (retinal images, chest radiographs, images for evaluating registration techniques, liver images, brain MRI scans).

Pascal

مجموعه داده پاسکال شامل داده های تصویری استاندارد برای شناسایی کلاس

Pascal dataset. (Standardized image data for object class recognition.)

Plant Images

مجموعه داده تصاویر گیاهی

Data set of plant images (Download from host web site home page.)

 

نمونه ای از پایگاه داده های تصویری که اغلب در یادگیری عمیق استفاده می شود

A SAMPLE OF IMAGE DATABASES USED FREQUENTLY IN DEEP LEARNING:

MNIST

الف - مجموعه داده MNIST از ارقام دست نویس تصاویر خاکستری با 60 هزار نمونه آموزشی و 10 هزار نمونه تست با ابعاد 28*28

A. MNIST dataset of handwritten digits (28x28 grayscale images with 60K training samples and 10K test samples in a consistent format).

CIFAR-10

ب- مجموعه داده CIFAR-10 شامل تصاویر رنگی با ابعاد 32*32 در 10 کلاس و 50 هزار تصویر آموزشی و 10 هزار تصویر تست

B. CIFAR-10 dataset. (32x32 RGB images in 10 classes. 50K training images and 10K test images).

CIFAR-100

ج- مجموعه داده CIFAR-100 شامل تصاویر رنگی با ابعاد 32*32 در 100 کلاس و 50 هزار تصویر آموزشی و 10 هزار تصویر تست

C. CIFAR-100 dataset. (32x32 RGB images in 100 classes. 50K training images and 10K test images).

CALTECH101

د- مجموعه داده Caltech101 شامل تصاویر رنگی و خاکستری با سایز های مختلف در 101 طبقه و جمعا 9144 تصویر

D. Caltech101 dataset. (RGB and grayscale images of various sizes images in 101 categories, for a total of 9144 images).

CALTECH256

ه- مجموعه داده Caltech256 شامل تصاویر رنگی و خاکستری با سایز های مختلف در 256 طبقه و جمعا 30608 تصویر

E. Caltech256 dataset. (RGB and grayscale images of various sizes in 256 categories for a total of 30608 images).

IMAGENET

و- مجموعه ImageNet شامل تصاویر رنگی و خاکستری با سایز های مختلف در 10000 طبقه و جمعا 3 میلیون تصویر

F. ImageNet (RGB and grayscale images of various sizes in more than 10,000 categories for a total of over 3 million images--Considered by many to be the standard for algorithm development and testing.)

More Images

ز- سایر پایگاه داده های مورد استفاده در یادگیری عمیق

G. More image databases used in deep learning.

 

یادگیری عمیق چیست؟


معمولا یادگیری عمیق اشاره به مجموعه ای از الگوریتم های یادگیری ماشین دارد که معمولا مبتنی بر شبکه های عصبی مصنوعی اند و تلاش دارند تا انتزاعات سطح بالای موجود در داده ها را مدل نماید. از این مدل ها برای توسعه راه هایی جهت بازنمایی داده ها استفاده می شود. داده ها میتوانند شامل یک کلمه، پیکسل، فرکانس و باشند و ممکن است معنای کمی بخودی خود داشته باشند اما ترکیب این داده ها می تواند چیز سودمندی را نمایش دهد.

مدلهای یادگیری عمیق مختلفی در تحقیقات و فعالیت های تجاری مورد استفاده قرار می گیرند. بعضی از این مدلها به قرار زیر اند :

·         شبکه عصبی کانولوشن

·         شبکه باور عمیق

·         شبکه عصبی  feed-forward

بسیاری از مدلهای یادگیری عمیق، الهام گرفته از فرآیند های بیولوژیکی اند.

یادگیری عمیق را میتوان هم در یادگیری با نظارت(supervised)  و هم بدون نظارت(unsupervised)  مورد استفاده قرار داد

یادگیری عمیق چگونه کار میکند؟

الگوریتم BackPropagation الگوریتم محبوبی است که یادگیری را در یادگیری عمیق در بسیاری از مدلها پیاده میکند. ایده این الگوریتم در دهه ۷۰ میلادی مطرح و در سال ۱۹۸۶ در مقاله " Learning representations by back-propagating errors "توسط  Rumelhartو Hinton و Williams به شهرت رسید.

یادگیری عمیق یکی از زیرمجموعه های یادگیری ماشین است وعملا همان شبکه های عصبی قدیمی هست که با پیشرفت های تکنولوژی توسعه یافته است. با عمیق شدن این شبکه ها و سلسله مراتبی که توسط لایه های مختلف ارائه می شود، سطوح انتزاع مختلفی توسط این شبکه ها بدست می آید. این شبکه ها داده محور بوده و بصورت خودکار مهندسی ویژگی در آنها انجام می گردد.

طی چند سال اخیر با پیشرفت سخت افزار و عمیق کردن شبکه ها بحث معماری های عمیق مجدد رونق گرفته است. بنابراین می توان بیان کرد که یادگیری عمیق مجموعه ای از تکنیکهای مبتنی بر شبکه های عصبی هست که اجازه  یادگیری ویژگی ها بصورت خودکار از خود داده های ورودی رو فراهم می کند. امروزه معماری های مختلفی از این نوع وجود دارد. معروف ترین و موفق ترین اونها شبکه های کانولوشنی هستند.

در مقابل یادگیری عمیق، یادگیری کم عمق یا اصطلاحا  shallow learning‌ وجود دارد که قبل از یادگیری عمیق از آن استفاده می شد و در واقع همان support vector machine‌ ها و شبکه های عصبی معمولی و بود.

در یادگیری کم عمق از شبکه عصبی (کم عمق) یا support vector machine‌ها و استفاده می شود و بیشتر برای دسته بندی و تمایز قائل شدن بین کلاسهای مختلفی است که در داده ها وجود دارد (به عنوان مثال برای شناسایی تصاویر سرطان و یا پیش گویی قیمت مسکن که در آن اطلاعات چندین سال اخیر در قالب داده وارد شده و سپس سیستم بر اساس اطلاعات جدید مثلا مقدار زیربنا و... قیمت را محاسبه می کند) اینها نمونه ای از یادگیری هستند. در روش کم عمق می بایست  مهندسی ویژگی انجام و یکسری الگوها و یا معادلات برای کشف ارتباط بین دادها پیدا کرده و بعد با استفاده از آن  مدل را آموزش میدادیم. دریادگیری عمیق خود سیستم مهندسی ویژگی را انجام می دهد. لذا خیلی مورد توجه قرار گرفته و نتایج بسیار عالی ای از آن به دست آمده است. یه نکته مهم در این روش ها عمق می باشد. مثلا شبکه عصبی هم در یادگیری عمیق کاربرد دارد و هم در یادگیری کم عمق! و تفاوت آنها در عمق شبکه می باشد.

 

در اصل یادگیری عمیق در دهه ۸۹ و ۹۰ نیز وجود داشته ولی به خاطر محدودیت سخت افزار و الگوریتم ها عملا تعداد لایه های شبکه عصبی محدود بوده و از سال  ۲۰۱۰ و ۲۰۱۱ و خصوصا ۲۰۱۲ با شدت تمام مطرح شده است. در سال ۲۰۱۲ بود که در اصل الکس کریژوسکی و جف هینتون معروف (یکی از پایه گذاران یادگیری عمیق دنیا) توانستند با استفاده از کارت گرافیک یه شبکه کانولوشنی رو آموزش داده و نتایج حیرت انگیزی بدست آوردند.

 

شبکه های کانولوشنی هم نوعی از شبکه های عصبی هستند و تو این شبکه سعی شده روش مغز در شناسایی تصاویر به نحوی پیاده سازی شود و تقریبا کلیات شبکه  عصبی درمورد آن صادق بوده و دارای یک سری تقاوت ها می باشد. مثلا در شبکه های عصبی ما اتصالات کامل داشتیم ولی اینجا وجود نداشته و فقط اشتراک پارامترها را داریم.

 

در شبکه عصبی لایه ها مثل لیست ویک بعدی هستند. اما در شبکه کانولوشن، لایه کانولوشن چند بعدی است و یکسری لایه ها و عملیاتهای خاص مربوط به خودش را داراست.

معرفی دو کتاب

برای انجام کار بر روی تصاویر کتب و مقالات متعددی تهیه شده است که در این قسمت دو بخش از کتابهایی که در آنها در خصوص CBIR مطالبی آمده درج شده است

1) Introduction to Content-Based Image Retrieval—Overview of Key Techniques

2) Computer Vision

دیتا ست

در تمام کارهای تحقیقاتی برای اثبات اینکه روش پیشنهادی از سایر روش ها در یک زمینه خاص برتری دارد نیاز به مقایسه و تست الگوریتم و یا روش می باشد برای این منظور پایگاه داده های استانداری تعریف شده که محققان از آنها برای تست سیستم پیشنهادی خود استفاده می نمایند. هر چند دانشگاه ها و موسسات تحقیقاتی دیتا ست هایی را تهیه و در اختیار کاربران قرار می دهند ولی  تعدادی از آنها مدت هاست که استفاده شده و جزء مهمترین دیتا ست های موجود در دنیا محسوب می شوند در این بخش اسامی و آدرس تعدادی از این دیتاست ها که در زمینه های مختلف دارای تصاویر می باشند بیان شده است.


1) Air Freight - The Air Freight data set is a ray-traced image sequence along with ground truth segmentation based on textural characteristics. (455 images + GT, each 160x120 pixels). (Formats: PNG)

2) Annotated face, hand, cardiac & meat images - Most images & annotations are supplemented by various ASM/AAM analyses using the AAM-API. (Formats: bmp,asf) ( Image Analysis and Computer Graphics / Technical University of Denmark)

3) CAVIAR video sequences of mall and public space behavior - 90K video frames in 90 sequences of various human activities, with XML ground truth of detection and behavior classification (Formats: MPEG2 & JPEG) ( Machine Vision Unit / University of Edinburgh)

4) Caltech Image Database - about 20 images - mostly top-down views of small objects and toys. (Formats: GIF)

5) CMU-VASC Sequence Dataset - The goal of the VASC Image Database is to share image data sets with researcheres around the world. To facilitate this, we have created this site, which contains over 5000 images split up over nearly 200 different data sets. We also provide a mechanism by which any one of these 200 sets can be downloaded in either .tgz or .zip forma

6) Computational Colour Constancy Data - A dataset oriented towards computational color constancy, but useful for computer vision in general. It includes synthetic data, camera sensor data, and over 700 images. (Formats: tiff) ( Computational Vision Lab / Simon Fraser University)

7) Content-based image retrieval database - 11 sets of color images for testing algorithms for content-based retrieval. Most sets have a description file with names of objects in each image. (Formats: jpg) ( Efficient Content-based Retrieval Group / University of Washington)

8) Deep Learning Databases - These datasets can be used for benchmarking deep learning algorithms

9) FVC2000 Fingerprint Databases - FVC2000 is the First International Competition for Fingerprint Verification Algorithms. Four fingerprint databases constitute the FVC2000 benchmark (3520 fingerprints in all). ( Biometric Systems Lab / University of Bologna)

10) German Fingerspelling Database - The database contains 35 gestures and consists of 1400 image sequences that contain gestures of 20 different persons recorded under non-uniform daylight lighting conditions. (Formats: mpg,jpg) ( Language Processing and Pattern Recognition / RWTH Aachen University)

11) ICG Testhouse sequence - 2 turntable sequences from ifferent viewing heights, 36 images each, resolution 1000x750, color (Formats: PPM) ( Institute of Computer Graphics and Vision / Graz University of Technology)

12) Image Analysis Laboratory - Images obtained from a variety of imaging modalities -- raw CFA images, range images and a host of "medical images". (Formats: homebrew) ( Image Analysis Laboratory / North Carolina State University)

13) Mammography Image Databases - 100 or more images of mammograms with ground truth. Additional images available by request, and links to several other mammography databases are provided. (Formats: homebrew)

14) NLM HyperDoc Visible Human Project - Color, CAT and MRI image samples - over 30 images (Formats: jpeg)

15) National Design Repository - Over 55,000 3D CAD and solid models of (mostly) mechanical/machined engineerign designs. (Formats: gif,vrml,wrl,stp,sat) ( Geometric & Intelligent Computing Laboratory / Drexel University)

16) The MIT-CSAIL Database of Objects and Scenes - Database for testing multiclass object detection and scene recognition algorithms. Over 72,000 images with 2873 annotated frames. More than 50 annotated object classes. (Formats: jpg) (Massachusetts Institute of Technology)

17) Traffic Image Sequences and 'Marbled Block' Sequence - thousands of frames of digitized traffic image sequences as well as the 'Marbled Block' sequence (grayscale images) (Formats: GIF) ( IAKS/KOGS / Universitaet Karlsruhe (TH))

18) U Oulu wood and knots database - Includes classifications - 1000+ color images (Formats: ppm)

19) USF Range Image Data with Segmentation Ground Truth - 80 image sets (Formats: Sun rasterimage)

20) University of Oulu Physics-based Face Database - contains color images of faces under different illuminants and camera calibration conditions as well as skin spectral reflectance measurements of each person. ( Machine Vision and Media Processing Unit / University of Oulu)

21) University of Oulu Texture Database - Database of 320 surface textures, each captured under three illuminants, six spatial resolutions and nine rotation angles. A set of test suites is also provided so that texture segmentation, classification, and retrieval algorithms can be tested in a standard manner. (Formats: bmp, ras, xv) ( Machine Vision Group / University of Oulu