Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [C] leggere pixel di un'immagine in linguaggio C

    Salve!
    Avrei la necessità di creare urgentemente un sorgente in linguaggio C, capace di recuperare le informazioni di un'immagine raster il cui path è passato da linea di comando.
    In pratica, dato un file RGB ad esempio di 10 x 10 pixel, dovrei contare quanti pixel neri ad esempio ci sono e quanti bianchi nella matrice risultante 10x10. Ho visto che ci sono delle librerie per il trattamento delle immagini come graphicsmagick. L'ho installata ma non riesco a comprenderne il funzionamento. Qualcuno potrebbe aiutarmi con un esempio per un'operazione così banale? Sorgenti C di esempio? Grazie!!

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304

    Moderazione

    Considerando che questo è un forum di discussione e non un servizio di sviluppo software gratuito conto terzi e che non ci sono discussioni urgenti in un forum (tutte hanno la medesima urgenza), direi che il primo passo è postare ciò che hai sviluppato tu, indicando tutti gli errori che ottieni (in compilazione/esecuzione) e i dubbi che riscontri.

    Da qui si parte.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    286

    Re: [C] leggere pixel di un'immagine in linguaggio C

    Originariamente inviato da pipe.net In pratica, dato un file RGB ad esempio di 10 x 10 pixel, dovrei contare quanti pixel neri ad esempio ci sono e quanti bianchi nella matrice risultante 10x10. Ho visto che ci sono delle librerie per il trattamento delle immagini come graphicsmagick. L'ho installata ma non riesco a comprenderne il funzionamento.
    É un approccio molto comune, quando in programmazione si deve fare una cosa, quello di cercare subito una funzione che faccia quella cosa, o ancor peggio una libreria dove ci siano delle funzioni per fare quella cosa, senza chiedersi se sia più semplice e immediato fare quella cosa e basta.

    Se hai un file bitmap, o un file RGB, è sufficiente leggere i valori del pixel e contarli. Se ad esempio hai un raster a 24 bit, quando incontri "0x FF FF FF" conti un pixel bianco, se incontri "0x 00 00 00" conti un pixel nero.

  4. #4

    Re: Moderazione

    Originariamente inviato da LeleFT
    Considerando che questo è un forum di discussione e non un servizio di sviluppo software gratuito conto terzi e che non ci sono discussioni urgenti in un forum (tutte hanno la medesima urgenza), direi che il primo passo è postare ciò che hai sviluppato tu, indicando tutti gli errori che ottieni (in compilazione/esecuzione) e i dubbi che riscontri.

    Da qui si parte.


    Ciao.

    Ciao LeleFT,
    perdona la schiettezza ma questo modo di rispondere, intriso di saccense, tra una battuta di poco spirito e un'altra di poca analisi, mi sembra che non abbia la finalità della "moderazione" (quale suppongo dovresti tenere) ma quella di voler mostrare i muscoli.
    Io non ho chiesto che altre persone sviluppassero software per conto mio, né ho preteso che le mie domande fossero trattate con più urgenza delle altre. Ho espresso una mia esigenza in modo che i lettori e gli utenti, nelle loro valutazioni personali, potranno eventualmente considerare, se lo vorranno.
    Se tu rileggessi bene il mio post, capiresti inoltre che sarebbe superfluo postare ciò che da me è stato sviluppato. L'obbiettivo è quello di ottenere una discussione analitica e metodologica sul topic proposto.
    Con stima,
    pipe

  5. #5

    Re: Re: [C] leggere pixel di un'immagine in linguaggio C

    Originariamente inviato da Paulin
    É un approccio molto comune, quando in programmazione si deve fare una cosa, quello di cercare subito una funzione che faccia quella cosa, o ancor peggio una libreria dove ci siano delle funzioni per fare quella cosa, senza chiedersi se sia più semplice e immediato fare quella cosa e basta.
    Se avessi trovato naturale e spontaneo farla, non avrei fatto ricerche di librerie particolari. Bisogna però saperla fare :-) e, benché nell'informatica abbia ormai qualche esperienza, ritengo di essere un "junior" nell'ambito della programmazione.


    Se hai un file bitmap, o un file RGB,
    Non "o" ma "e". Il file in ingresso può essere di tipo bitmap (cioè raster) e RGB.


    è sufficiente leggere i valori del pixel e contarli. Se ad esempio hai un raster a 24 bit, quando incontri "0x FF FF FF" conti un pixel bianco, se incontri "0x 00 00 00" conti un pixel nero.
    La lettura con la funzione standard fopen()? Proverò a cimentarmi, poi metterò in questo topic la mia esperienza. Grazie!

    pipe

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304

    Re: Re: Moderazione

    Originariamente inviato da pipe.net
    Ciao LeleFT,
    perdona la schiettezza ma questo modo di rispondere, intriso di saccense, tra una battuta di poco spirito e un'altra di poca analisi, mi sembra che non abbia la finalità della "moderazione" (quale suppongo dovresti tenere) ma quella di voler mostrare i muscoli.
    Io non ho chiesto che altre persone sviluppassero software per conto mio, né ho preteso che le mie domande fossero trattate con più urgenza delle altre. Ho espresso una mia esigenza in modo che i lettori e gli utenti, nelle loro valutazioni personali, potranno eventualmente considerare, se lo vorranno.
    Se tu rileggessi bene il mio post, capiresti inoltre che sarebbe superfluo postare ciò che da me è stato sviluppato. L'obbiettivo è quello di ottenere una discussione analitica e metodologica sul topic proposto.
    Con stima,
    pipe
    1) Se avessi letto il regolamento interno, sapresti che per il rapporti con i moderatori si usano i messaggi privati. Questo per non "sporcare" le discussioni.

    2) Non so cosa tu abbia visto di "battute di poco spirito": in ciò che ho postato non ce n'erano affatto, né era mia intenzione "mostrare i muscoli", quanto solo quello di svolgere i compiti che mi sono stati assegnati in quanto moderatore.

    3) Non hai chiesto che altre persone sviluppino software per conto tuo. Non so tu, ma questa tua precisa richiesta
    Qualcuno potrebbe aiutarmi con un esempio per un'operazione così banale? Sorgenti C di esempio? Grazie!!
    dimostra esattamnte il contrario. E la richiesta di sviluppo (anche parziale) di codice non è ammessa in questo forum (è scritto nel regolamento interno).

    4) Non è MAI superfluo postare ciò che si è arrivati a produrre: primo, aiuta gli utenti a capire dove ti stai bloccando; secondo, aiuta gli utenti a capire con quali strutture dati stai lavorando; terzo, aiuta gli utenti a capire quali possibili errori stai commettendo o a quali stai andando incontro; quarto, aiuta gli utenti ad indirizzarti per il meglio; quinto, è una traccia utile per chi, come te, sia alla ricerca di soluzioni per un problema simile (e lo spirito del forum è proprio questo).

    Detto questo, si continui con la discussione.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7

    Re: Re: Re: Moderazione

    Originariamente inviato da LeleFT
    1) Se avessi letto il regolamento interno, sapresti che per il rapporti con i moderatori si usano i messaggi privati. Questo per non "sporcare" le discussioni.
    Il regolamento interno l'ho letto e non c'è scritto che si deve rispondere in privato a un messaggio pubblico.
    A me sembra invece che, sempre stando al regolamento, tu abbia travalicato il ruolo di moderatore del quale ti fai garante.

    2) Non so cosa tu abbia visto di "battute di poco spirito": in ciò che ho postato non ce n'erano affatto, né era mia intenzione "mostrare i muscoli", quanto solo quello di svolgere i compiti che mi sono stati assegnati in quanto moderatore.
    "Da qui si parte", "servizio di sviluppo software gratuito conto terzi", tono complessivo del messaggio.

    3) Non hai chiesto che altre persone sviluppino software per conto tuo. Non so tu, ma questa tua precisa richiesta
    dimostra esattamnte il contrario. E la richiesta di sviluppo (anche parziale) di codice non è ammessa in questo forum (è scritto nel regolamento interno).
    Una richiesta di pseudo-codice da affrontare o link a sorgenti che ne parlino ti sembra una richiesta di sviluppo software?
    Spero tu stia scherzando.

    4) Non è MAI superfluo postare ciò che si è arrivati a produrre: primo, aiuta gli utenti a capire dove ti stai bloccando; secondo, aiuta gli utenti a capire con quali strutture dati stai lavorando; terzo, aiuta gli utenti a capire quali possibili errori stai commettendo o a quali stai andando incontro; quarto, aiuta gli utenti ad indirizzarti per il meglio; quinto, è una traccia utile per chi, come te, sia alla ricerca di soluzioni per un problema simile (e lo spirito del forum è proprio questo).
    Ti risponderai da solo quando avrai capito il mio post, cosa che ha fatto ad esempio Paulin.


    Detto questo, si continui con la discussione.
    Gli utenti, me compreso, continueranno con la discussione se lo vorranno. "Si continui..."

  8. #8
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304

    Re: Re: Re: Re: Moderazione

    Originariamente inviato da pipe.net
    Il regolamento interno l'ho letto e non c'è scritto che si deve rispondere in privato a un messaggio pubblico.
    Rileggiti bene il punto 9 del regolamento interno che ti ho linkato, il cui titolo è "Rapporto con i moderatori".

    A me sembra invece che, sempre stando al regolamento, tu abbia travalicato il ruolo di moderatore del quale ti fai garante.
    Assolutamente no. E' mio preciso dovere far rispettare il regolamento.

    "Da qui si parte", "servizio di sviluppo software gratuito conto terzi", tono complessivo del messaggio.
    Non c'è proprio nulla di ironico.
    "Da qui si parte", ovvero dal codice che tu dovresti postare.
    "Servizio di sviluppo software gratuito conto terzi", leggasi richiesta di produrre codice.
    Proprio nulla di ironico.

    Una richiesta di pseudo-codice da affrontare o link a sorgenti che ne parlino ti sembra una richiesta di sviluppo software?
    Sbaglio o ho letto "Sorgenti C di esempio"? Non mi pare una richiesta di pseudo-codice.

    Spero tu stia scherzando.
    No, anche in questo caso.


    Ti risponderai da solo quando avrai capito il mio post, cosa che ha fatto ad esempio Paulin.
    Bene. Paulin ha interpretato il tuo post.
    Io (e probabilmente altri che si sono astenuti dal rispondere) l'ho interpretato inizialmente come una richiesta di codice (vedi la richiesta di Sorgenti C di esempio). Certo, posso aver sbagliato, ma il mio ruolo di moderatore (che tu mi accusi di aver travalicato) mi impone una doverosa precisazione, alla luce anche del fatto che ti ostini a non leggere attentamente il Regolamento (vedi primo punto di risposta). Risulta evidente a tutti che non ho chiuso la discussione: se avessi "travalicato" i miei doveri avrei dovuto prendere per buona la mia interpretazione e chiudere senza appello la discussione. L'ho fatto? No: ho solo apposto alcune precisazioni e l'indicazione a leggere il regolamento.

    Gli utenti, me compreso, continueranno con la discussione se lo vorranno. "Si continui..."
    E speriamo che queste sterili polemiche siano finite... alla prossima sarò costretto a segnalarti agli amministratori per palese e reiterata violazione del regolamento. Poi saranno loro a decidere. Sperando che nemmeno loro "travalichino" i loro ruoli (questa era volutamente ironica).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  9. #9

    Re: Re: Re: Re: Re: Moderazione

    E speriamo che queste sterili polemiche siano finite... alla prossima sarò costretto a segnalarti agli amministratori per palese e reiterata violazione del regolamento. Poi saranno loro a decidere. Sperando che nemmeno loro "travalichino" i loro ruoli (questa era volutamente ironica).
    Puoi fare pure ricorso alla corte costituzionale o al consiglio di stato... non ci perderò il sonno (anche questa è volutamente ironica). Rimango dell'opinione che hai mostrato inutilmente i muscoli.

    Con immutata stima,
    pipe

  10. #10
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304

    Re: Re: Re: Re: Re: Re: Moderazione

    Originariamente inviato da pipe.net
    Puoi fare pure ricorso alla corte costituzionale o al consiglio di stato... non ci perderò il sonno (anche questa è volutamente ironica). Rimango dell'opinione che hai mostrato inutilmente i muscoli.

    Con immutata stima,
    pipe
    Uomo avvisato, mezzo salvato.
    Segnalato.

    E chiudo anche la discussione, visto che a cercare di discutere con un briciolo di buon senso non se ne viene fuori.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.