R10.net

R10.net (https://www.r10.net/index.php)
-   Programlama (https://www.r10.net/programlama/)
-   -   C Dilinde Histogram Oluşturma? (Yardım) (https://www.r10.net/programlama/1740661-c-dilinde-histogram-olusturma-yardim.html)

dragonwx 06-08-2017 01:36:23

C Dilinde Histogram Oluşturma? (Yardım)
 
Merhaba arkadaşlar hocamızın verdiği bir ödevde bir dosyadan çekilen resmin histogramını oluşturmamız isteniyor. Yardımcı olabilecek varsa sevinirim.

Örnek bir kodlama.
Kod:

#include<stdio.h>
int *xsize, *ysize;

int get_image(char *filename, int im[][500], int *size, int *ysize)
{
        FILE *infile;
        int i, j;
        if ((infile= fopen (filename, "r"))!=NULL)                       
        {

                fscanf(infile, "%d %d", *xsize, *ysize);
                for (i = 0; i<*ysize; i++)
                        for (j = 0; j<*xsize;j++)
                                fscanf(infile, "%d", &im[i][j]);
                return 1;
        }

        else
                return 0;
}
/* Histogramı bulma işlemleri. Dosyanın j uzantısı maksimum 500 karater olabilir. Histogram içeriğiyse 256
karakter*/
void find_histogram(int image[][500], int *xsize, int *ysize, int hist[256])
{
        int i, j;
        for (i = 0;i<256;hist[i++]=0);/i yi 0 dan başlat. 256ya kadar saydır. Ardından histi 1 arttır./
        for (i = 0;i<ysize;i++)/*i yi y ye kadar 1 arttır./
                for (j = 0;j<xsize;j++)/*j yi x e kadar 1 arttır./

                        hist[image[i][j]++];/Histogram içerisinde image i 1 arttır./

}

void print_histogram(int hist[256])/histogram yazdırılacak./
{
        int i;
        for (i=0;i<256;i++)/i yi 0 olarak başlat ve 256 ya kadar dönder./
                printf("%d\n", hist[i]);/histogramın içerisine i yi double olarak yazdır ve alt satıra geç/
}

void main(void)/program buradan itibaren çalışmaya başlar./
{
        char filename[100];
        int image[500][500], histogram[256], xsize, ysize, file_ok;
        printf("Enter the image file name:");
        scanf("%s", filename);
        file_ok = get_image(filename, image, &xsize, &ysize);
        if (file_ok == 0)
        {
                printf("File error.\n");
        }
        else {
                find_histogram(image, xsize, ysize, histogram);
                print_histogram(histogram);
        }

}


dragonwx 06-08-2017 21:54:31

Yok mu yardımcı olabilecek :) ?

Asgardia 06-08-2017 22:22:49

Hocam C yaşıyormu ya ? Python varken...

dotnetDeveloper 07-08-2017 19:52:54

Alıntı:

Asgardia Nickli Üyeden Alıntı (Mesaj 1072613292)
Hocam C yaşıyormu ya ? Python varken...

C yaşıyor mu derken? Performans gerektiren her uygulama c üzerinde koşuyor. Engine ler, runtimelar, garbage collectorlar, interpreterlar, compilerlar, os lar, savunma sanayii, sinyal işleme, görüntü işleme, machine learning uygulamaları vs vs...

Python ne ile ayakta duruyor acaba? C ile yazılmış olmasın.

Tamam her dil ayrı bir ihtiyaca yönelik, python ı bende seviyorum fakat bu C nin öldüğü anlamına mı geliyor yoksa sizin hiç C ile işiniz olmadığı anlamına mı..


Konu sahibi arkadaş için internette histogramın ne olduğu ve nasıl oluşturulduğu birçok kaynakta anlatılmış, bunlardan faydalanabilir.


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 13:25:23.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.