• Welcome to TUKE FÓRUM - Fórum pre študentov Technickej Univerzity v Košiciach.
 

Paralelné programovanie

Started by mishelka, 16.09.2010, 13:36:18

« predchdzajce - alie »

trek

jaaj sory to som si neuvedomil :)

johnyo13

☼Ѿ☼ ... ☼Ѿ☼

Padres

Aj so Sabom je az na buduci tyzden?

puq

Quote from: Padres on  15.11.2010, 18:30:40
Aj so Sabom je az na buduci tyzden?

s wassermannom je na buduci tyzden lebo v stredu je sviatok

roman5555

moze mi niekto prosim vas napisat ake prikazy treba zadat ked chcem zadanie spustit na skolskych pc ?
taky nejaky maly postup dakujem :D

provasik

Ozaj kolegovia, ak niekto uz robyl dokumentaciu - tak akym sposobom ste robili tu efektivnost vykonavania, kedze tam je napisane experimentalna metoda, tak co, mame ist do skoly, a spustit to na skolskych PC, a merat cas, ci co ?

popko

Prosim niekoho kto bol na cviceni a pozorne pocuval, nech mi popise a vysvetli zadanie 7, dakujem velmi pekne.

Corse

Quote from: popko on  22.11.2010, 15:54:49
Prosim niekoho kto bol na cviceni a pozorne pocuval, nech mi popise a vysvetli zadanie 7, dakujem velmi pekne.

toto by ti mohlo pomoct: http://hron.fei.tuke.sk/~sabo/pp/files/zadanie_7.pdf

pepco

mate nejaku stranku s roznymi filtrami na to BMP? chcel by som nejaky dobry :D ale nikde som nenasiel taky ze napr mi to spravi negativ obrazku :) viete niekto?

Padres

no s tym filtrom co my sme robili tazko spravis nejake "efekty" :). Ten filter co je v ukazke ti akurat tak rozmaze obraz, lebo pre kazdy pixel zobere iste vahy aj zo susednych. Viackrat ked to zbehne tak je pekny blurnuty obrazok :). Mozno, keby bolo v matici v strede zaporne 8, a tebe by vo vysledku vysiel nejaky negativny pixel tak by si si to osetril a upravil tak by si mohol dostat nejaky negativ obrazku... to len napad :)
Inak su niekde nejake sample ako treba tie dokumentacky vyplnit?

SSPPYY

OMG sak pre negativ uplne staci urobit pre kazdy pixel a kazdu farbu RGB zlozky toto:
c = 255 - c, kde c je farba  ;)

Padres

Quote from: SSPPYY on  24.11.2010, 21:53:06
OMG sak pre negativ uplne staci urobit pre kazdy pixel a kazdu farbu RGB zlozky toto:
c = 255 - c, kde c je farba  ;)
Ale on to chcel spravit pomocou upravy tej 3x3 matice zo 7. zadania, aspon ked som to tak pochopil.

SSPPYY

Tak upravou matice sa to neda, lebo ta definuje len vahy okolitych pixelov vratane pocitaneho.
To by sa musel zmenit aj vypocet v kode kde sa ta matica aplikuje.

puq

ludia mate uz niekto zrobenu 7cku? ak ano viete hodit nejaky link kde je nejaka jednoducha praca napr. s BMP-ckom? ako to nacitat a tak

Casso

Quote from: puq on  25.11.2010, 02:21:20
ludia mate uz niekto zrobenu 7cku? ak ano viete hodit nejaky link kde je nejaka jednoducha praca napr. s BMP-ckom? ako to nacitat a tak
povodne som sa snazil nacitat hlavicku ako celok no zarovnavanie struktur to cele posr... . tazke som to riesil takto. a este netreba zabudnut ze obrazok je ulozeny ako BGR, nie ako RGB
falat kodu z mojej 7ky:
typedef struct {
  uint16_t type;
  uint32_t hsize;
  uint16_t reserved1;
  uint16_t reserved2;
  uint32_t offsetbits;
 
  uint32_t size;
  uint32_t width;
  uint32_t height;
  uint16_t planes;
  uint16_t bitcount;
  uint32_t compression;
  uint32_t sizeimage;
  int32_t xpelspermeter;
  int32_t ypelspermeter;
  uint32_t colorsused;
  uint32_t colorsimportant;
} BITMAPHEADER;

void WriteBMP(const char * filename, BITMAPHEADER bmpheader, uint8_t *data)
{
 FILE *bmp;
 
 bmp = fopen(filename, "wb");
 
 if(!bmp)
   return;
 
 fwrite(&bmpheader.type, 2, 1, bmp);
 fwrite(&bmpheader.hsize, 4, 1, bmp);
 fwrite(&bmpheader.reserved1, 2, 1, bmp);
 fwrite(&bmpheader.reserved2, 2, 1, bmp);
 fwrite(&bmpheader.offsetbits, 4, 1, bmp);
 fwrite(&bmpheader.size, 4, 1, bmp);
 fwrite(&bmpheader.width, 4, 1, bmp);
 fwrite(&bmpheader.height, 4, 1, bmp);
 fwrite(&bmpheader.planes, 2, 1, bmp);
 fwrite(&bmpheader.bitcount, 2, 1, bmp);
 fwrite(&bmpheader.compression, 4, 1, bmp);
 fwrite(&bmpheader.sizeimage, 4, 1, bmp);
 fwrite(&bmpheader.xpelspermeter, 4, 1, bmp);
 fwrite(&bmpheader.xpelspermeter, 4, 1, bmp);
 fwrite(&bmpheader.colorsused, 4, 1, bmp);
 fwrite(&bmpheader.colorsimportant, 4, 1, bmp);
 
 
 fwrite(data, sizeof(uint8_t), 3 * bmpheader.width * bmpheader.height, bmp);
 
 fclose(bmp);
 
 return;
}

uint8_t *LoadBMP(const char * filename, BITMAPHEADER *bmpheader)
{
 FILE *bmp;
 uint8_t *data;
 
 bmp = fopen(filename, "rb");
 
 if(!bmp)
   return NULL;
 
 fread(&(*bmpheader).type, 2, 1, bmp);
 fread(&(*bmpheader).hsize, 4, 1, bmp);
 fread(&(*bmpheader).reserved1, 2, 1, bmp);
 fread(&(*bmpheader).reserved2, 2, 1, bmp);
 fread(&(*bmpheader).offsetbits, 4, 1, bmp);
 fread(&(*bmpheader).size, 4, 1, bmp);
 fread(&(*bmpheader).width, 4, 1, bmp);
 fread(&(*bmpheader).height, 4, 1, bmp);
 fread(&(*bmpheader).planes, 2, 1, bmp);
 fread(&(*bmpheader).bitcount, 2, 1, bmp);
 fread(&(*bmpheader).compression, 4, 1, bmp);
 fread(&(*bmpheader).sizeimage, 4, 1, bmp);
 fread(&(*bmpheader).xpelspermeter, 4, 1, bmp);
 fread(&(*bmpheader).xpelspermeter, 4, 1, bmp);
 fread(&(*bmpheader).colorsused, 4, 1, bmp);
 fread(&(*bmpheader).colorsimportant, 4, 1, bmp);
 
 if((*bmpheader).bitcount != 24)
 {
   printf("Unsupported File Format!\n");
 }
 
 data = (uint8_t *) malloc(sizeof(uint8_t) * 3 * (*bmpheader).width * (*bmpheader).height);
 
 fread(data, sizeof(uint8_t), 3 * (*bmpheader).width * (*bmpheader).height, bmp);
 
 fclose(bmp);
 
 return data;
}

Padres

Inak u BMP pozor - riadky su zarovnane na 4 bajty. U textur s rozlisenim nasobku styroch nie je problem s indexaciou pixlu, v inych pripadoch treba brat ohlad na to ze ten falat pixel pamate co si ziskas z BMP suboru neobsahuje vsetko iba pixely, ale aj navyse data na zarovnanie. Cize ked mas povedzme 3x2 texturu, tak v pixel pamati mas asi toto:
BGR|BGR|BGR|zzz
BGR|BGR|BGR|zzz
Vyriesit sa to da bud urobenim algoritmu co berie ohlad na zarovnanie, alebo pouzitie 32 bit BMP (to sa da sejvnut napr. v photoshope), alebo pouzivat textury nasobku styroch a dufat ze cviciaci nebude chciet otestovat texturu
inej velkosti :).

puq

Quote from: Casso on  25.11.2010, 16:53:06
Quote from: puq on  25.11.2010, 02:21:20
ludia mate uz niekto zrobenu 7cku? ak ano viete hodit nejaky link kde je nejaka jednoducha praca napr. s BMP-ckom? ako to nacitat a tak
povodne som sa snazil nacitat hlavicku ako celok no zarovnavanie struktur to cele posr... . tazke som to riesil takto. a este netreba zabudnut ze obrazok je ulozeny ako BGR, nie ako RGB
falat kodu z mojej 7ky:
typedef struct {
   uint16_t type;
   uint32_t hsize;
   uint16_t reserved1;
   uint16_t reserved2;
   uint32_t offsetbits;
   
   uint32_t size;
   uint32_t width;
   uint32_t height;
   uint16_t planes;
   uint16_t bitcount;
   uint32_t compression;
   uint32_t sizeimage;
   int32_t xpelspermeter;
   int32_t ypelspermeter;
   uint32_t colorsused;
   uint32_t colorsimportant;
} BITMAPHEADER;

void WriteBMP(const char * filename, BITMAPHEADER bmpheader, uint8_t *data)
{
  FILE *bmp;
 
  bmp = fopen(filename, "wb");
 
  if(!bmp)
    return;
 
  fwrite(&bmpheader.type, 2, 1, bmp);
  fwrite(&bmpheader.hsize, 4, 1, bmp);
  fwrite(&bmpheader.reserved1, 2, 1, bmp);
  fwrite(&bmpheader.reserved2, 2, 1, bmp);
  fwrite(&bmpheader.offsetbits, 4, 1, bmp);
  fwrite(&bmpheader.size, 4, 1, bmp);
  fwrite(&bmpheader.width, 4, 1, bmp);
  fwrite(&bmpheader.height, 4, 1, bmp);
  fwrite(&bmpheader.planes, 2, 1, bmp);
  fwrite(&bmpheader.bitcount, 2, 1, bmp);
  fwrite(&bmpheader.compression, 4, 1, bmp);
  fwrite(&bmpheader.sizeimage, 4, 1, bmp);
  fwrite(&bmpheader.xpelspermeter, 4, 1, bmp);
  fwrite(&bmpheader.xpelspermeter, 4, 1, bmp);
  fwrite(&bmpheader.colorsused, 4, 1, bmp);
  fwrite(&bmpheader.colorsimportant, 4, 1, bmp);
 
 
  fwrite(data, sizeof(uint8_t), 3 * bmpheader.width * bmpheader.height, bmp);
 
  fclose(bmp);
 
  return;
}

uint8_t *LoadBMP(const char * filename, BITMAPHEADER *bmpheader)
{
  FILE *bmp;
  uint8_t *data;
 
  bmp = fopen(filename, "rb");
 
  if(!bmp)
    return NULL;
 
  fread(&(*bmpheader).type, 2, 1, bmp);
  fread(&(*bmpheader).hsize, 4, 1, bmp);
  fread(&(*bmpheader).reserved1, 2, 1, bmp);
  fread(&(*bmpheader).reserved2, 2, 1, bmp);
  fread(&(*bmpheader).offsetbits, 4, 1, bmp);
  fread(&(*bmpheader).size, 4, 1, bmp);
  fread(&(*bmpheader).width, 4, 1, bmp);
  fread(&(*bmpheader).height, 4, 1, bmp);
  fread(&(*bmpheader).planes, 2, 1, bmp);
  fread(&(*bmpheader).bitcount, 2, 1, bmp);
  fread(&(*bmpheader).compression, 4, 1, bmp);
  fread(&(*bmpheader).sizeimage, 4, 1, bmp);
  fread(&(*bmpheader).xpelspermeter, 4, 1, bmp);
  fread(&(*bmpheader).xpelspermeter, 4, 1, bmp);
  fread(&(*bmpheader).colorsused, 4, 1, bmp);
  fread(&(*bmpheader).colorsimportant, 4, 1, bmp);
 
  if((*bmpheader).bitcount != 24)
  {
    printf("Unsupported File Format!\n");
  }
 
  data = (uint8_t *) malloc(sizeof(uint8_t) * 3 * (*bmpheader).width * (*bmpheader).height);
 
  fread(data, sizeof(uint8_t), 3 * (*bmpheader).width * (*bmpheader).height, bmp);
 
  fclose(bmp);
 
  return data;
}


diky moc :)

pepco

#142
ja mam 2 struktury a nacital som aj file header aj info header v kuse bez problemov cez 2x fread :) btw to v akom poradi idu farby pixelu je asi jedno, ved nad kazdou zlozkou zbehne rovnaky algoritmus

Padres

Ako ma vyzerat ta dokumentacia k zadaniam? Je niekde nejaky sample/tutorial?

Casso

Quote from: Padres on  25.11.2010, 17:57:06
Ako ma vyzerat ta dokumentacia k zadaniam? Je niekde nejaky sample/tutorial?

Uploadol by som moju dokumentaciu ale nakolko tam su aj zdrojaky tak to nespravim. ale nieje to nic tazke, staci tam napisat ku kazdemu tych 5 bodov, ku kazdemu zadaniu je to maximalne na jednu stranu (bez zdrojakov)

pepco

#145
neviem ako u ostatnych, ale co mam s Wassermann-om, tam hovoril, ze zdrojaky do dokumentacie netreba, zbytocnost kedze odovzdavame tie programy spolu s tou dokumentaciou a po dalsie, nie vsetky body musime mat v dokumentacii z tej predlohy :) ja konkretne mam len po 2 body pri prvych 3 zadaniach a po 3 body v dalsich

ApokalypS

akej predlohy?



a este mam niekolko otazok: bola vcera prednaska? nebol niekto? a o com rozpraval pred tyzdnom?
80% mozgu človeka tvorí kvapalina, v mojom prípade brzdová..

CHCEM S5 :zuzka: STARY IS :zuzka: !!!!
http://www.tu-ke.com/forum/o-nicom/otvoreny-list-vedeniu-firmy-dupress-(dodavatel-mais)/

pepco

predlohy co ma Kollar na svojej stranke

pred tyzdnom rozpraval o tom, ze uz viac prednasok nebude :D a nieco o skuske... ze v 13.tyzdni je pre vsetkych povinny predtermin :)

ApokalypS

#148
aha, nice..

v case prednasky? ci to bude v maise vypisane, ze kedy?
80% mozgu človeka tvorí kvapalina, v mojom prípade brzdová..

CHCEM S5 :zuzka: STARY IS :zuzka: !!!!
http://www.tu-ke.com/forum/o-nicom/otvoreny-list-vedeniu-firmy-dupress-(dodavatel-mais)/

pepco

v MAISe to uz dlhsie je :) v case prednasky, kedze inokedy nie su volne miestnosti...