디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

누가 Flip 구현좀 해줘 제발제발제발 ㅠㅠㅠ

제발(121.157) 2012.02.15 13:53:31
조회 80 추천 0 댓글 4

어제 오후부터 지금까지 계속 어떻게 구현할까 생각만하고 진짜 손도못댐 ㅠㅠㅠ

진짜 미치기 3초전임

포문이랑 그 주위에 있는걸 이용해서 이미지 상하든 좌우든 상관없으니 제발 누가

구현좀 해줘  ( 주석안에 있는건 사진에서 파란색요소를 없애는겅)


#include <stdio.h>
#include "BMP_header.h"
#include <malloc.h>

BMP_Header bmp_header;

void BMP_file_header_read (FILE *fp, BMP_Header * bmp_header){
fread (&bmp_header->charB, sizeof (char), 1, fp);
fread (&bmp_header->charM, sizeof (char), 1, fp);
fread (&bmp_header->filesize, sizeof (unsigned int), 1, fp);
fread (&bmp_header->reserved, sizeof (unsigned int), 1, fp);
fread (&bmp_header->pixel_offset, sizeof (unsigned int), 1, fp);
fread (&bmp_header->header_size, sizeof (unsigned int), 1, fp);
fread (&bmp_header->width, sizeof (unsigned int), 1, fp);
fread (&bmp_header->height, sizeof (unsigned int), 1, fp);
fread (&bmp_header->planes_n_and_bits_per_pixel_n, 4, 1, fp);
fread (&bmp_header->c_type, sizeof (unsigned int), 1, fp);
fread (&bmp_header->image_size_with_padding_in_bytes, sizeof (unsigned int), 1, fp);
fread (&bmp_header->horizontal_resolution, sizeof (unsigned int), 1, fp);
fread (&bmp_header->veritical_resolution, sizeof (unsigned int), 1, fp);
fread (&bmp_header->number_of_colors, sizeof (unsigned int), 1, fp);
fread (&bmp_header->important_colors, sizeof (unsigned int), 1, fp);
}

void BMP_file_header_write (FILE *wp, BMP_Header * bmp_header){
fwrite (&bmp_header->charB, sizeof (char), 1, wp);
fwrite (&bmp_header->charM, sizeof (char), 1, wp);
fwrite (&bmp_header->filesize, sizeof (unsigned int), 1, wp);
fwrite (&bmp_header->reserved, sizeof (unsigned int), 1, wp);
fwrite (&bmp_header->pixel_offset, sizeof (unsigned int), 1, wp);
fwrite (&bmp_header->header_size, sizeof (unsigned int), 1, wp);
fwrite (&bmp_header->width, sizeof (unsigned int), 1, wp);
fwrite (&bmp_header->height, sizeof (unsigned int), 1, wp);
fwrite (&bmp_header->planes_n_and_bits_per_pixel_n, 4,1, wp);
fwrite (&bmp_header->c_type, sizeof (unsigned int), 1, wp);
fwrite (&bmp_header->image_size_with_padding_in_bytes,sizeof (unsigned int), 1, wp);
fwrite (&bmp_header->horizontal_resolution, sizeof (unsigned int),1, wp);
fwrite (&bmp_header->veritical_resolution, sizeof (unsigned int),1, wp);
fwrite (&bmp_header->number_of_colors, sizeof (unsigned int),1, wp);
fwrite (&bmp_header->important_colors, sizeof (unsigned int),1, wp);
}

void image_flip (char * pixel_ptr, BMP_Header * bmp_header, FILE *fp){
 
 fread (pixel_ptr,bmp_header->image_size_with_padding_in_bytes,1,fp);

  // change the Blue part of each pixel to zero
  // first calculate the padding size
 unsigned int pure_number_of_bytes_per_line = bmp_header->width*3;

 unsigned int padding_size = (4 - (pure_number_of_bytes_per_line % 4)) %4;

   // (pure_number_of_bytes_per_line % 4);

 char *p = pixel_ptr;


 unsigned int one_line_width_with_padding = bmp_header->width*3 + padding_size;

 for (unsigned int i = 0; i < bmp_header->height; i++)

  for (unsigned int j = 0; j < bmp_header->width; j++){
  int first_byte_postion_in_a_line = i * one_line_width_with_padding;
  

  
  }
 
     /*
     for (int i = 0; i < 10; i++) //bmp_header->height
     for (int j = 0; j < bmp_header->width; j++ )
     {
     int first_byte_postion_in_a_line =
     i*one_line_width_with_padding;
     pixel_ptr[first_byte_postion_in_a_line+(j*3)] =255;
     pixel_ptr[first_byte_postion_in_a_line+(j*2)] =0;
     pixel_ptr[first_byte_postion_in_a_line+(j)] =0;
      }
     */ 

}
int main (void)
{
 // first read a bitmap file
 FILE * fp = fopen ("D:\\Desert.bmp", "rb"); // file open
 BMP_file_header_read (fp, &bmp_header);
 // BMP header information completely read
 // now read the pixel information
 // first prepare memory for the pixel data
 // with image_size_with_padding_in_bytes
 char * pixel_ptr;
 char * changed_img;
 pixel_ptr  = (char *)malloc(bmp_header.image_size_with_padding_in_bytes);
 changed_img  = (char *)malloc(bmp_header.image_size_with_padding_in_bytes);
 image_flip (pixel_ptr, &bmp_header, fp);

 // write a new bitmap file
 FILE * wp = fopen ("D:\\Blue_changed_BMP2.bmp", "wb");
 BMP_file_header_write (wp, &bmp_header);
 fwrite (pixel_ptr, bmp_header.image_size_with_padding_in_bytes,1, wp);

 fclose(fp);

 fclose(wp);

 free(pixel_ptr);
 
}

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 이제는 의미 없어진 것 같은 시상식은? 운영자 25/12/01 - -
AD 따뜻한 겨울나기! 방한용품 SALE 운영자 25/11/27 - -
303385 파이선 공부 [7] 쒦뚫쉚뚫샒휆뚫뚫쒦갤로그로 이동합니다. 12.02.15 131 0
303384 앱개발자 월급과 기간협의대해서 궁금점을 올립니다. [6] 카오드림드(1.237) 12.02.15 134 1
303381 ★★요즘 프갤 댓글 알바들이 물갈이 되었습니다★★ 에어로홍갤로그로 이동합니다. 12.02.15 61 0
303380 오늘은 파괘왕아저씨 안왔네 ㅇㅇㅎ(211.246) 12.02.15 47 0
303378 자바 한개만 물어볼게여 ㅠㅠ [7] (58.75) 12.02.15 91 0
303376 형들 c에서 빨간 엑박 메모리 에러 있잖슴요...... [1] SoliCode갤로그로 이동합니다. 12.02.15 41 0
303374 웹에이션시 다니는 프로그래머 님들앙 정말 님네 회사에선 웹디가 웹표준 1(220.117) 12.02.15 86 0
303372 아니왜 웹에이젼시에선 디자이너가 디자인에 div웹표준코딩까지 해야되냐그! [3] 1(220.117) 12.02.15 127 0
303371 와 프갤성님들 거의다 해결했는데 조금만 더 도와줘요 [6] 거의다됨(121.157) 12.02.15 77 0
303370 링크드리스트는 누가 만들었음? [5] 모미지갤로그로 이동합니다. 12.02.15 108 0
303369 관계식같은거 빨리 생각해내는법좀.. [2] 코딩...?갤로그로 이동합니다. 12.02.15 67 0
303368 야이세끼들아!!! [10] y녀6디리(220.118) 12.02.15 109 0
303365 성님들 간단한 C언어 질문점 ㄷㄷ;; [7] 프로 게이™갤로그로 이동합니다. 12.02.15 94 0
303364 하선이 이뻐죽겠네 [1] 씨발라드세요갤로그로 이동합니다. 12.02.15 84 0
303363 아...핫식스와 레드불은좋지않아.. [2] 데헷(220.86) 12.02.15 82 0
303361 아오 왜 wrapper class를 만들면 WM_PAINT를 못 쓰지 나다라마법사(1.237) 12.02.15 44 0
303360 윈7, 비주얼스튜디오2010에서 iostream헤더파일이 안 된다.. [4] insight갤로그로 이동합니다. 12.02.15 217 0
303358 인터넷 카페에서 스터디 가르쳐주는 사람들은 뭐야? [5] (58.75) 12.02.15 108 0
303357 춤추는 망상박동 자살춤갤로그로 이동합니다. 12.02.15 64 0
303355 앱등이 캠프가자~ dogfootson갤로그로 이동합니다. 12.02.15 43 0
303354 코딩 스타일 투표 [20] 들럿갤로그로 이동합니다. 12.02.15 180 0
303352 24살 고졸 입니다. 제발 도움을 주세요 [8] 막장고졸(211.37) 12.02.15 433 0
303351 더미다 풀수 있냐 없냐 [3] ㅇㅇ(121.162) 12.02.15 77 0
303350 핸드폰 산지 일년만에 [2] 들럿갤로그로 이동합니다. 12.02.15 55 0
303349 usb 오토런이 ㅄ됐음 도와주셈 시발 [3] 쥐돌이론(119.194) 12.02.15 61 0
303347 가장 뿌듯한 순간 [5] SeHwa갤로그로 이동합니다. 12.02.15 183 0
303346 돈 모아서 여자칭구 만드러야지 [1] y녀6디리(220.118) 12.02.15 58 0
303345 동생씨가 테트리스 제작 도전 중 -_-;; [2] 생각놀이갤로그로 이동합니다. 12.02.15 109 0
303344 Vim 배울려는 초보자인데 Vim 한글 입력할때 다 이런건가요 [8] Vim늅늅(119.205) 12.02.15 107 0
303343 이거 띄어쓰기 어케해야댐 [5] 모미지갤로그로 이동합니다. 12.02.15 92 0
303342 님들아 ㅠㅠ 혹시 visual 6.0 잇으신분?... 제발.. [9] 코딩...?갤로그로 이동합니다. 12.02.15 87 0
303341 게임 핵 이야기 나와서 말인데요..... [7] SoliCode갤로그로 이동합니다. 12.02.15 182 0
303340 너희들도 조심해라. 깜놀했다. [4] 바보플머(222.121) 12.02.15 196 0
303337 짜장면 냠냠 (58.75) 12.02.15 51 0
303336 지금 빌어먹을 여성부가 ㅈ같은데 [2] 나리링갤로그로 이동합니다. 12.02.15 81 0
303332 가상서버호스팅 질문 늅늅 [1] dogfootson갤로그로 이동합니다. 12.02.15 71 0
303331 6개월동안 인터넷 자바 스터디그룹하면 얼마나 늘까??? (58.75) 12.02.15 82 0
303330 플갤형들은 운동안해? [6] ㅇㅇㅎ(110.47) 12.02.15 108 0
303327 그러고보니 어제 발렌타인데이였구나 [1] 땡칠도사갤로그로 이동합니다. 12.02.15 75 0
303322 형들 지금 네이버 메인에 체크아웃 베너에 여자 누군줄 아는 횽있엉?~ 늅늅(112.187) 12.02.15 43 0
303321 뭐 아무튼.. [1] 빌어먹을야옹갤로그로 이동합니다. 12.02.15 47 0
303320 지금부터 머리를 조아리는게 좋을꺼야 [7] ㅇㅇㅎ(110.47) 12.02.15 126 0
303319 심심하다 [2] 땡칠도사갤로그로 이동합니다. 12.02.15 54 0
303318 <red>태그</red> [2] (210.113) 12.02.15 62 0
303317 제발 사렬줘 자바 메모장 ㅠㅠ 늅늅(203.237) 12.02.15 54 0
303316 <red>태그</red> (210.113) 12.02.15 30 0
303315 아 난 병신인가봐 [2] Vodun갤로그로 이동합니다. 12.02.15 80 0
303314 <red>태그</red> (210.113) 12.02.15 36 0
303313 형들 이번주에 신입으로 회사 출근했는데.....[웹개발] [1] 빌어먹을야옹갤로그로 이동합니다. 12.02.15 187 0
303312 <red>태그</red> (210.113) 12.02.15 40 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2