Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.iso-c++ > #2019
| Path | csiph.com!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail |
|---|---|
| From | Stefan Reuther <stefan.news@arcor.de> |
| Newsgroups | de.comp.lang.iso-c++ |
| Subject | Re: Selbstgestrickter Floyd-Steinberg-Filter sieht seltsam aus... |
| Date | Sun, 12 Feb 2017 11:00:01 +0100 |
| Organization | A noiseless patient Spider |
| Lines | 32 |
| Sender | "Moderation de.comp.lang.iso-c++" <dclisocpp+mod@elaboris.de> |
| Approved | White-List <dclisocpp+mod@elaboris.de> |
| Message-ID | <o7pf7i.4f8.1@stefan.msgid.phost.de> (permalink) |
| References | <o7n4v0$emd$1@news.albasani.net> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=utf-8 |
| Content-Transfer-Encoding | 8bit |
| Injection-Info | mx02.eternal-september.org; posting-host="25133f2e23d3850502f89c387effa84c"; logging-data="8322"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19YqQgc6alQnQdDoOUcdcH+" |
| User-Agent | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.0 Hamster/2.1.0.1538 |
| Xref | csiph.com de.comp.lang.iso-c++:2019 |
Show key headers only | View raw
Am 11.02.2017 um 14:52 schrieb Jörg "Yadgar" Bleimann:
> dist.red = t0.red - closest.red;
> dist.green = t0.green - closest.green;
> dist.blue = t0.blue - closest.blue;
> if (t1.red > -1)
> {
> img[r].at(c+1).get_all(triple);
> newred = triple.red + dist.red*0.4375;
> newgreen = triple.green + dist.green*0.4375;
> newblue = triple.blue + dist.blue*0.4375;
> img[r].at(c+1).set_all(mround(newred), mround(newgreen),
> mround(newblue));
> }
[...]
> Das Programm kompiliert problemlos (bis auf ein paar Warnungen wegen nur
> in C++11 verfügbarer Funktionen), es gibt auch keinen Laufzeitfehler...
> aber wenn ich mir die gerasterte Bilddatei (von RGB nach
> 1-bit-Schwarzweiß) ansehe, frage ich mich, was da falsch gelaufen ist -
> wie Floyd-Steinberg-Schwarzweiß z. B. in GIMP sieht es nämlich nicht aus!
Das war jetzt ziemlich viel Code, aber ein entscheidender Teil fehlt:
wie ist denn die rgb-Klasse definiert?
Da "meine" RGB-Klassen eigentlich immer uint8_t-Member haben, vermute
ich in dem oben zitierten Code sowas wie unsigned-Überläufe.
Ansonsten: kleines Bild (3x3?) nehmen, Code großräumig verprinten und
per Hand nachrechnen. Debuggen halt... Und nicht vergessen, das Ergebnis
hinterher als Unittest abzuspeichern :)
Stefan
Back to de.comp.lang.iso-c++ | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Selbstgestrickter Floyd-Steinberg-Filter sieht seltsam aus... Jörg "Yadgar" Bleimann <yazdegird@gmx.de> - 2017-02-11 14:52 +0100
Re: Selbstgestrickter Floyd-Steinberg-Filter sieht seltsam aus... Stefan Reuther <stefan.news@arcor.de> - 2017-02-12 11:00 +0100
Re: Selbstgestrickter Floyd-Steinberg-Filter sieht seltsam aus... Jörg "Yadgar" Bleimann <yazdegird@gmx.de> - 2017-02-12 21:43 +0100
Re: Selbstgestrickter Floyd-Steinberg-Filter sieht seltsam aus... Jörg "Yadgar" Bleimann <yazdegird@gmx.de> - 2017-02-12 20:34 +0100
Re: Selbstgestrickter Floyd-Steinberg-Filter sieht seltsam aus... Markus Schaaf <mschaaf@elaboris.de> - 2017-02-14 01:03 +0100
Re: Selbstgestrickter Floyd-Steinberg-Filter sieht seltsam aus... Jörg "Yadgar" Bleimann <yazdegird@gmx.de> - 2017-02-14 11:36 +0100
csiph-web