⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 text.c

📁 This is code tutorial for image processing include:histogram,sketon....
💻 C
📖 第 1 页 / 共 2 页
字号:
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,VAL,  0,VAL,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,VAL,  0,VAL,  0,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short ay[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,VAL,  0,VAL,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short az[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,VAL,VAL,VAL,VAL,VAL,  0},
                   {  0,  0,  0,  0,  0,VAL,  0},
                   {  0,  0,  0,  0,VAL,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,VAL,  0,  0,  0,  0},
                   {  0,VAL,  0,  0,  0,  0,  0},
                   {  0,VAL,VAL,VAL,VAL,VAL,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a1[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,VAL,VAL,  0,  0,  0},
                   {  0,VAL,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,VAL,VAL,VAL,VAL,VAL,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a2[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,  0,  0,VAL,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,VAL,  0,  0,  0,  0},
                   {  0,VAL,  0,  0,  0,  0,  0},
                   {  0,VAL,VAL,VAL,VAL,VAL,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a3[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,  0,  0,  0,VAL,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,  0,  0,  0,  0,VAL,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a4[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,VAL,  0,VAL,  0,  0,  0},
                   {  0,VAL,  0,VAL,  0,  0,  0},
                   {  0,VAL,  0,VAL,  0,  0,  0},
                   {  0,VAL,VAL,VAL,VAL,VAL,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a5[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,VAL,VAL,VAL,VAL,VAL,  0},
                   {  0,VAL,  0,  0,  0,  0,  0},
                   {  0,VAL,  0,  0,  0,  0,  0},
                   {  0,VAL,VAL,VAL,VAL,  0,  0},
                   {  0,  0,  0,  0,  0,VAL,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a6[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,VAL,  0,  0,  0,  0,  0},
                   {  0,VAL,VAL,VAL,VAL,  0,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a7[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,VAL,VAL,VAL,VAL,VAL,  0},
                   {  0,  0,  0,  0,  0,VAL,  0},
                   {  0,  0,  0,  0,  0,VAL,  0},
                   {  0,  0,  0,  0,VAL,  0,  0},
                   {  0,  0,  0,VAL,  0,  0,  0},
                   {  0,  0,VAL,  0,  0,  0,  0},
                   {  0,VAL,  0,  0,  0,  0,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a8[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a9[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,VAL,  0,  0,  0,VAL,  0},
                   {  0,  0,VAL,VAL,VAL,VAL,  0},
                   {  0,  0,  0,  0,  0,VAL,  0},
                   {  0,  0,  0,  0,  0,VAL,  0},
                   {  0,  0,  0,  0,  0,VAL,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};

short a0[R][C] = { {  0,  0,  0,  0,  0,  0,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,VAL,  0,  0,VAL,VAL,  0},
                   {  0,VAL,  0,  0,VAL,VAL,  0},
                   {  0,VAL,  0,VAL,  0,VAL,  0},
                   {  0,VAL,  0,VAL,  0,VAL,  0},
                   {  0,VAL,VAL,  0,  0,VAL,  0},
                   {  0,  0,VAL,VAL,VAL,  0,  0},
                   {  0,  0,  0,  0,  0,  0,  0}};



main(argc, argv)
   int  argc;
   char *argv[];
{
   int    l, w;
   int    counter=0, i, j, il, ie=7, ll, le;
   int    lsave, esave;
   struct tiff_header_struct image_header;

   my_clear_text_screen();

   if(argc < 6){
      printf("\n usage: ilabel file-name il ie l w text");
      printf("\n        where out image will be lxROWS wxCOLS\n");
      exit(-1);
   }

         /******************************
         *
         *   Setup the output file.
         *
         *******************************/

   image_header.lsb            = 1;
   image_header.bits_per_pixel = 8;
   image_header.image_length   = atoi(argv[4])*ROWS;
   image_header.image_width    = atoi(argv[5])*COLS;;
   image_header.strip_offset   = 1000;

   if(does_not_exist(argv[1]))
      create_allocate_tiff_file(argv[1], 
                                &image_header, 
                                image);
   else
      printf("\n%s already exists", argv[1]);

   il = atoi(argv[2]);
   ie = atoi(argv[3]);

   read_tiff_image(argv[1], image, il-R, ie-C, 
                   il-R+ROWS, ie-C+COLS);

printf("\nDEBUG> reading from %d %d",il-R, ie-C);

   lsave = il;
   esave = ie;

   while(il >= ROWS)
      il = il - ROWS;
   while(ie >= COLS)
      ie = ie - COLS;

printf("\nDEBUG> writing into %d %d", il, ie);

         /******************************
         *
         *   Loop through the text
         *   arguments and place the
         *   letter arrays into the
         *   image.
         *
         *******************************/

   printf("\n");
   for(i=6; i<argc; i++){
      for(j=0; j<(strlen(argv[i])); j++){

         printf("%c", argv[i][j]);
         if(argv[i][j] == 'a')
            copy_array_into_image(aa, image, il, ie);
         if(argv[i][j] == 'b')
            copy_array_into_image(ab, image, il, ie);
         if(argv[i][j] == 'c')
            copy_array_into_image(ac, image, il, ie);
         if(argv[i][j] == 'd')
            copy_array_into_image(ad, image, il, ie);
         if(argv[i][j] == 'e')
            copy_array_into_image(ae, image, il, ie);
         if(argv[i][j] == 'f')
            copy_array_into_image(af, image, il, ie);
         if(argv[i][j] == 'g')
            copy_array_into_image(ag, image, il, ie);
         if(argv[i][j] == 'h')
            copy_array_into_image(ah, image, il, ie);
         if(argv[i][j] == 'i')
            copy_array_into_image(ai, image, il, ie);
         if(argv[i][j] == 'j')
            copy_array_into_image(aj, image, il, ie);
         if(argv[i][j] == 'k')
            copy_array_into_image(ak, image, il, ie);
         if(argv[i][j] == 'l')
            copy_array_into_image(al, image, il, ie);
         if(argv[i][j] == 'm')
            copy_array_into_image(am, image, il, ie);
         if(argv[i][j] == 'n')
            copy_array_into_image(an, image, il, ie);
         if(argv[i][j] == 'o')
            copy_array_into_image(ao, image, il, ie);
         if(argv[i][j] == 'p')
            copy_array_into_image(ap, image, il, ie);
         if(argv[i][j] == 'q')
            copy_array_into_image(aq, image, il, ie);
         if(argv[i][j] == 'r')
            copy_array_into_image(ar, image, il, ie);
         if(argv[i][j] == 's')
            copy_array_into_image(as, image, il, ie);
         if(argv[i][j] == 't')
            copy_array_into_image(at, image, il, ie);
         if(argv[i][j] == 'u')
            copy_array_into_image(au, image, il, ie);
         if(argv[i][j] == 'v')
            copy_array_into_image(av, image, il, ie);
         if(argv[i][j] == 'w')
            copy_array_into_image(aw, image, il, ie);
         if(argv[i][j] == 'x')
            copy_array_into_image(ax, image, il, ie);
         if(argv[i][j] == 'y')
            copy_array_into_image(ay, image, il, ie);
         if(argv[i][j] == 'z')
            copy_array_into_image(az, image, il, ie);
         if(argv[i][j] == '1')
            copy_array_into_image(a1, image, il, ie);
         if(argv[i][j] == '2')
            copy_array_into_image(a2, image, il, ie);
         if(argv[i][j] == '3')
            copy_array_into_image(a3, image, il, ie);
         if(argv[i][j] == '4')
            copy_array_into_image(a4, image, il, ie);
         if(argv[i][j] == '5')
            copy_array_into_image(a5, image, il, ie);
         if(argv[i][j] == '6')
            copy_array_into_image(a6, image, il, ie);
         if(argv[i][j] == '7')
            copy_array_into_image(a7, image, il, ie);
         if(argv[i][j] == '8')
            copy_array_into_image(a8, image, il, ie);
         if(argv[i][j] == '9')
            copy_array_into_image(a9, image, il, ie);
         if(argv[i][j] == '0')
            copy_array_into_image(a0, image, il, ie);
         if(argv[i][j] == '.')
            copy_array_into_image(aperiod,image,il,ie);
         if(argv[i][j] == ',')
            copy_array_into_image(acomma,image,il,ie);
         if(argv[i][j] == '!')
            copy_array_into_image(aexclam,image,il,ie);


         ie = ie + C;
         counter++;
         if(counter > COUNTER_LIMIT){
            ie      = IE_START;
            il      = il+R+1;
            counter = 0;
         }
      }  /* ends loop over letters in argument */
         copy_array_into_image(xx, image, il, ie);
         ie = ie + C;
         counter++;
         if(counter > COUNTER_LIMIT){
            ie      = IE_START;
            il      = il+R+1;
            counter = 0;
         }
   }  /* ends loop over arguments */

   il = lsave;
   ie = esave;
   write_array_into_tiff_image(argv[1], image,
                               il, ie,
                               il+ROWS, ie+COLS);
printf("\nDEBUG> Writing output file %d %d", il, ie);
}


copy_array_into_image(a, the_image, il, ie)
   short a[R][C], the_image[ROWS][COLS];
   int   il, ie;
{
   int i, j;
   for(i=0; i<R; i++)
      for(j=0; j<C; j++)
         the_image[il+i][ie+j] = a[i][j];

}  /* ends copy_array_into_image */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -