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

📄 separar.c

📁 Separar - Separate the dictionary for data quantization
💻 C
字号:

/* Programa de conversao de imagens *.dat(madeiro)
  para imagens no formato *.pgm

  Autor: Waslon Terllizzie Araujo Lopes
  Data: Dez/99
*/

#include <stdio.h>
#include <malloc.h>
#include <math.h>

#define DIM 256
int main(void){

char name[25];
int i,j,k,l;
FILE *arquivo;
int *ha,**pta;
long w;
float x;




// alocacao da memoria

ha = (int *)malloc(4 *  DIM * DIM  * sizeof(int)); //n.o de pixels para niv. de cinza

if( (!ha) ){
            printf("\nFalha na aloca玢o de mem髍ia\n");
            exit(1);
}

//****************************Leitura de Arquivo********************************
printf("\nDigite o nome do arquivo  de entrada de dados (*.dat): ");
scanf("%s",&name[0]);
if((arquivo=fopen(name,"r"))==NULL){
 printf("\nN鉶 foi poss韛el abrir o arquivo de entrada de dados\n");
 exit(1);
}

// alocacao da memoria  -- imagem de entrada


//pta = (int **)malloc(256*sizeof(int *));  // nivel de cinza de cada pixel
pta = (int **)malloc(4*DIM*sizeof(int *));  // nivel de cinza de cada pixel
if(!pta){
         printf("\nFalha na aloca玢o de mem髍ia\n");
         exit(1);
}
//for(i=0;i<256;i++){
for(i=0;i<4*DIM;i++){
    pta[i] =(int *)malloc(4*DIM * sizeof(int));
    if(!pta[i]) {
            printf("\nFalha na aloca玢o de mem髍ia\n");
            exit(1);
    }
}

//leitura dos valores da matriz da imagem de entrada

//for(j=0;j<5;j++)
for(i=0;i<4*DIM*DIM;i++){
       fscanf(arquivo,"%f",&x);
        *(/* j*65536 + */ ha+i) = x;
        //*(ha+i) = x;
}
fclose(arquivo);


//************************Impress鉶 de Dados no arquivo************************

//************************ Arquivo 1 ******************************************
printf("\nDigite o nome do arquivo da imagem de sa韉a (*.dat): ");
scanf("%s",&name[0]);
if((arquivo=fopen(name,"w"))==NULL){
 printf("\nNao foi possivel abrir o arquivo de saida de dados\n");
 exit(1);
 }
for(i=0;i<DIM*DIM;i++)
               fprintf(arquivo,"%d\n",*(0*65536 + ha + i));

fclose(arquivo);

//************************ Arquivo 2 ******************************************

printf("\nDigite o nome do arquivo da imagem de sa韉a (*.dat): ");
scanf("%s",&name[0]);
if((arquivo=fopen(name,"w"))==NULL){
 printf("\nNao foi possivel abrir o arquivo de saida de dados\n");
 exit(1);
 }
for(i=0;i<DIM*DIM;i++)
               fprintf(arquivo,"%d\n",*(1*65536 + ha + i));

fclose(arquivo);

//************************ Arquivo 3 ******************************************

printf("\nDigite o nome do arquivo da imagem de sa韉a (*.dat): ");
scanf("%s",&name[0]);
if((arquivo=fopen(name,"w"))==NULL){
 printf("\nNao foi possivel abrir o arquivo de saida de dados\n");
 exit(1);
 }
for(i=0;i<DIM*DIM;i++)
               fprintf(arquivo,"%d\n",*(2*65536 + ha + i));

fclose(arquivo);

//************************ Arquivo 4 ******************************************

printf("\nDigite o nome do arquivo da imagem de sa韉a (*.dat): ");
scanf("%s",&name[0]);
if((arquivo=fopen(name,"w"))==NULL){
 printf("\nNao foi possivel abrir o arquivo de saida de dados\n");
 exit(1);
 }
for(i=0;i<DIM*DIM;i++)
               fprintf(arquivo,"%d\n",*(3*65536 + ha + i));

fclose(arquivo);


//************************ Fim da Impress鉶 ***********************************

return 1;

}

⌨️ 快捷键说明

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