Мультимодальна візуалізація зображень комплементарної природи
Національний
технічний університет України
"Київський
політехнічний інститут"
Факультет
біомедичної інженерії
Кафедра
біобезпеки та відновної біоінженерії
Лабораторна
робота
Мультимодальна
візуалізація зображень комплементарної природи
Виконав:
студент гр. БС-32м
Найдьнов І.М.
Перевірила:
Алхімова С.М.
Київ
- 2014
Завдання
1. Ознайомитися з теоретичними відомостями щодо
мультимодального рендерингу, основними методами проведення візуалізації з метою
об’єднання інформації комплементарної природи
. Відповідно до свого варіанту завантажити то
відобразити зображення двох модальностей. Створити подію при обробці якої поряд
із початковим зображенням проводитися візуалізація методом мультимодального
рендерінгу
Номер варіанту
|
Метод мультимодального рендерінгу
|
2
|
Метод шахової дошки
|
Лістинг
рендеринг візуалізація мультимодальний
комплементарний
//#include "stdafx.h"
#include <string>
#include <glut.h>
#include <gdcmReader.h>
#include <gdcmImageReader.h>
#include <gdcmImage.h>
#include <gdcmFile.h>
#include <gdcmDicts.h>
#include <gdcmDict.h>
#include <gdcmAttribute.h>namespace std;namespace gdcm;
#pragma comment(lib,"gdcmMSFF.lib")
#pragma comment(lib,"gdcmDSED.lib")
#pragma comment(lib,"SOIL.lib")unsigned int ntex=3;scrw=512,
scrh=512;char *buffers[ntex];int tex[ntex], w=0, h=0, currTexture=0;int
chess_size=32;display(){(GL_COLOR_BUFFER_BIT);(GL_TEXTURE_2D,
tex[currTexture]);(GL_QUADS);f(0,0);f((scrw-w)/2,(scrh-h)/2);f(1,0);f((scrw+w)/2,(scrh-h)/2);f(1,1);f((scrw+w)/2,(scrh+h)/2);f(0,1);f((scrw-w)/2,(scrh+h)/2);();(GL_TEXTURE_2D,
0);();
}keyPressed (unsigned char key, int x, int y)
{(key-'1'<ntex)= key-'1';();
}draw_string_bitmap(void *font, const char* string)
{f(5, 5);(*string)(font, *string++);
}mousePointer(int x, int y)
{stringColor[4];d(0.0,0.0,0.0);(GL_QUADS);f(0,0);f(50,0);f(50,50);f(0,50);();d(1.0,1.0,1.0);((scrw-w)/2<=x
&& x<(scrw+w)/2 && (scrh-h)/2<=y &&
y<(scrh+h)/2)
{i=((x-(scrw-w)/2)+w*(h-y+(scrh-h)/2))*3;(stringColor,"%d",buffers[currTexture][i]);_string_bitmap(GLUT_BITMAP_9_BY_15,
stringColor);
}();
}main(int argc, char* argv[])
{=width;=height;
}if(w!=width || h!=height)
{<< "Dimensions don't agree" << endl;2;
}[i]=new unsigned char[w*h*3];(int j=0; j<w*h;
j++)[i][j*3]=buffers[i][j*3+1]=buffers[i][j*3+2]=buffer[j];
}[2]=new unsigned char[w*h*3];(int j=0; j<w*h; j++)
{x=j%w,
y=j/w;[2][j*3]=buffers[2][j*3+1]=buffers[2][j*3+2]=buffers[x/chess_size%2==y/chess_size%2][j*3];
}(&argc, argv);(GLUT_RGB);(scrw, scrh);("Lab
10");(0, scrw, 0, scrh, 0, 1);(GL_TEXTURE_2D);(ntex,tex);(int
i=0;i<ntex;i++)
{(GL_TEXTURE_2D,tex[i]);(GL_UNPACK_ALIGNMENT,
1);D(GL_TEXTURE_2D,0,GL_RGB,w,
h,0,GL_RGB,GL_UNSIGNED_BYTE,buffers[i]);(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,
GL_NEAREST);(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
}(display);(keyPressed);(mousePointer);();0;
}
Результати
роботи програми