Very neat. I have a love-hate relationship with a unique type of digital sensor called the Foveon X3, which needs a particular (very sluggish and limited capability) software made by Sigma to convert the RAWs. Recently I have been using AI to create a converter that processes the RAWs in a similar fashion with some improvements.
This is one of those cases where its a means-to-an-end (I just want to take more photos without being bogged down) and less of a project for me to learn how to reverse-engineer and design signal processing pipelines. I am very grateful for what recent models are enabling me to do.
Remind us what the Foveon sensor's quirk was? Something in the subpixel layout as I recall. A non-bayer pattern since abandoned and largely unsupported, yet effective somehow. But maybe I'm imagining this.
Foveon sensor is composed of three Red/blue/green layers, so each pixels know exactly its color, while the Bayer sensor used by other manufacturers is composed of pixels that are either red, blue or green, and that implies some reading out of its color and its neighbour's one... and some glitches (typically moire or purple fringes). In order to reduce those, a Low-pass filter that blurs the picture a little bit is added on top of the sensor. Therefore, foveon pictures are way sharper, with true colors. This is the theory for colors... in fact it's a very hard to tame sensor and results can be very random. Plus the cameras are very slow because they have to process 3x more information. Sigma being a very very small company versus the other big guys, their R&D is limited. Still, it's a very nice camera to use for geeks who takes time to understand it. You hate it or love it. No in-between.
Everyone has a love/hate relationship with Foveon, that's the beauty of the sensor isn't it ? Would you mind sharing your project ? That's awesome. Have you been able to compare crispness of files ? Dng compatibility from latest cameras, although it results in huge files, was pretty useful but files were not as sharp as native X3F developed in Sigma Photo Pro.
What improvements have you made? Processing RAW sluggishness was always an issue from de-Bayering. Before RAW, my hell was DPX image sequences. This was pre-SSD, so I/O was painful opening/closing individual frames in realtime. The best improvement of processing RAW I've experienced was NVMe SSDs.
This is just depressing to me having literally grown up in a darkroom.
"For years my process looked like this: load film and take photos, ....[blah blah blah]... the exported image."
"At first this was an exciting process for me. Then as the number of rolls increased, so did my effort to do this for 36 frames per roll."
I shot black and white film sine the 70's, medium and 35mm. I would develop the negatives and prints myself. The complete process was a joy. I never printed every shot, but I put care into each shot I processed. I was careful when I took a photograph, because the cost limited how much I shot. This made me a better photographer.
I later started scanning my film with a Nikon CoolScan (this was in the late 90's) and i already started hating it. Then I started full digital and now I do not shoot anymore (I was semi professional with Art work published in national magazines).
"My part is now the part I can thoroughly enjoy, which is looking at the results I’ve snapped and finding inspiration to snap more."
Why do any of this just shoot digital if you do not care about the process?
Some aspects of the process seem more like labor than a form of self-expression. I think if you are into the limitations of shooting film photos it makes sense.
I agree in part, in that it is sad that this person does not have access to a darkroom. As someone who is also now shooting film and then camera scanning, I would love to have access to a darkroom. It's just a compromise film shooters have to make, and often at no fault to them. It's either too expensive (which the negatives already are), or too far away/too big to fit in modern homes, or more likely both.
We're just grateful that film is still available at all.
When I showed my Konica Hexar to a younger colleague, he said, but how do you get the pictures into the computer. It was like a world opened for him when I said that I don't.
Interesting project! I scan 35mm and medium-format film with a mirrorless camera, macro lens, and Lomography film holder, then convert with Negative Lab Pro in Lightroom. I’m happy with the results, but the Lightroom subscription has me considering writing my own converter.
Could you share more about your NumPy pipeline, or publish the code? I’m particularly curious about how you use the blank film reference and roll-level measurements to handle the orange mask, color balance, and tone curves. Do you use camera/scanner calibration profiles or film-stock-specific adjustments, or estimate everything from the scans themselves?
Also, your screenshot appears to show an OpticFilm 7400. Would you recommend it, and roughly what did you pay? Have you tried camera scanning? I’ve been considering automating film advance and capture on my setup, but consistent color conversion is the part I’m least confident about.
Of course, it's impossible to know for sure what was LLM processed or not, but some of your posts (like this one) have been getting classified that way.
It is a very sensible and reasonable comment- literally all questions I'd want to ask to replicate the setup, in a format that's easy to parse. If the author did use LLM it did not substantially alter the content of their question.
I thought it was a reasonable comment and, like you, I thought they were good questions. I haven't followed what kind of watermarking LLMs are putting in their output that might be a telltale for their use so maybe it's readily apparent in a way that isn't to me.
I'd be mortified if a comment I made was accused of being LLM-edited or "created". I don't use any of that junk but if I'm reading LLM output and not realizing it I just might be adopting some of its mannerisms and styles with realizing it. That's chilling.
I ended up discussing it with the moderators and they interpret "transcribe and formatting" as contributing enough that they want to "educate" the user to not do that.
In my mind, using an LLM to lightly format a legitimate questions falls below any threshold I'd apply to AI-written writing. I often dictate HN messages to my phone, and in my case, personally edit the message (tediously), but if there was a tool that produced text that looked lightly LLM, I wouldn't care about it at all.
It's not a big deal because in five years, the idea of chiding a user for using an LLM to enhance their text is going to be considered ridiculous. I've lived through enough computer revolutions to know this; once, I didn't get a job (in ~1989) because I could type 80wpm but made a bunch of errors... on a typewriter! The agency told me they needed people who could type 80wpm on a typewriter.
For whatever it's worth: It's definitely phrased a bit strangely but it passes my own sniff test. If they really are using a dictation-oriented method for getting text into a box (as they wrote in a followup reply to themself) then that may adequately explain the strangeness.
There was a time when scanning and [photographic] printing of 35mm film negatives was what I did for a living; it's likely that I've touched more film than most people ever will. I think they're asking questions that are a good combination of solid, thoughtful, and practical.
It wasn't a generated comment at all! Read the comment, and then what the author wrote elsewhere saying they spoke it into their phone.
https://news.ycombinator.com/item?id=49948614
"To reiterate, those were legit questions. I used voice dictation to my phone, with an app that transcribed and formatted my message."
harassing a user for doing that is just unncessary and I dont't think it violates the site's guidelines. Further, the comment itself was high quality, and contributed to the discussion.
It's not a hill I want to die on either, ultimately the moderators run the site and make the rules and we comply with them at their pleasure.
dang believes that the "transcription and formatting" adds a signature. I entered into Gemini Pro (at the highest level of reasoning) and it calls it human written text and provides a far more detailed description of why:
"If an LLM was used here, it was likely just used as a grammar checker or "polisher" rather than a generator. If we had to flag anything, it would be this section:... .his reads like a standard, high-quality comment from a technical forum like Hacker News or Reddit's r/analog. If the user utilized an LLM, they likely wrote the entire comment themselves and merely passed it through a tool like Grammarly or ChatGPT with a prompt like "Fix my typos" without letting it change their voice or vocabulary."
I tried ChatGPT and Claude (all the most recent models I have access to) and they all agree: human text, slightly modified to be more readable.
Looking at Pangram's output, it only mentioned the last sentence as AI generated:
"Would you recommend it, and roughly what did you pay? Have you tried camera scanning? I’ve been considering automating film advance and capture on my setup, but consistent color conversion is the part I’m least confident about."
That's absolutely a sentence a human expert might write. Even if it wasn't, the content contributes to the discussion. Seriously, why would grammar checkers for voice dictation even be remotely an issue?
I used voice dictation to transcribe my rambling thoughts on the article, which was thereafter re-arranged into a still verbose but somewhat more coherent reply. I should have taken the time to reword it properly - my laziness is on me.
I was not aware the rule against AI-assited text at the time, and will be more careful next time. Nonetheless, I find it unfortunate that we've spend more time talking about AI usage in a comment, than the blog which prompted it.
In case it helps at all: I post that type of reply (https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...) precisely when the commenter is a good contributor who we don't want to get dinged by HN's software. Usually it turns out that people weren't aware of the rule (as was the case here).
(I've marked the subthread offtopic and collapsed it now)
I can see why this comment would trigger people's AI alarm, especially if it fits a pattern for this user. The questions seem legit at first glance, but completely uninteresting. Too general and specific at the same time, if you see what I mean.
You should check out the negpy project. It in my view has the best inversion process. It claims to emulate the whole analog print chain in the inversion process. They have a fold works cited.
It also automates most of the process. It works with SANE, some other legacy scanners, and camera scanning. It can even do trichrome scans automatically.
I don't have a public writeup, but the general approach for orange mask removal is: scan a blank unexposed frame from the same roll, take its per-channel mean as your reference white, then divide each pixel by that reference per channel before doing anything else. That normalizes the mask out instead of trying to subtract a fixed color. After that, a per-roll linear stretch (black point from the darkest scanned frame, white point from the lightest) gets you a rough base. Tone curve is the hard part: NLP uses a nonlinear S-curve tuned per stock, and matching that from scratch means a lot of trial and error with reference images you know the expected look of. If you want a quick win before rewriting things, Lightroom lets you write develop settings to XMP so you're not locked into the catalog even if you cancel later; the actual RAW/TIFF processing engine is what needs a subscription, not the metadata.
A colorist I worked with did something similar by using reference film stock of the same film that was being scanned. This was anime 16mm film prints from the 80s that had been scanned multiple times and color set on arbitrary decisions by who ever was working with the film at the time. After using the reference stock to base decisions, the director said it was the closest he had seen to what he wanted.
Very neat. I have a love-hate relationship with a unique type of digital sensor called the Foveon X3, which needs a particular (very sluggish and limited capability) software made by Sigma to convert the RAWs. Recently I have been using AI to create a converter that processes the RAWs in a similar fashion with some improvements.
This is one of those cases where its a means-to-an-end (I just want to take more photos without being bogged down) and less of a project for me to learn how to reverse-engineer and design signal processing pipelines. I am very grateful for what recent models are enabling me to do.
Remind us what the Foveon sensor's quirk was? Something in the subpixel layout as I recall. A non-bayer pattern since abandoned and largely unsupported, yet effective somehow. But maybe I'm imagining this.
Foveon sensor is composed of three Red/blue/green layers, so each pixels know exactly its color, while the Bayer sensor used by other manufacturers is composed of pixels that are either red, blue or green, and that implies some reading out of its color and its neighbour's one... and some glitches (typically moire or purple fringes). In order to reduce those, a Low-pass filter that blurs the picture a little bit is added on top of the sensor. Therefore, foveon pictures are way sharper, with true colors. This is the theory for colors... in fact it's a very hard to tame sensor and results can be very random. Plus the cameras are very slow because they have to process 3x more information. Sigma being a very very small company versus the other big guys, their R&D is limited. Still, it's a very nice camera to use for geeks who takes time to understand it. You hate it or love it. No in-between.
Everyone has a love/hate relationship with Foveon, that's the beauty of the sensor isn't it ? Would you mind sharing your project ? That's awesome. Have you been able to compare crispness of files ? Dng compatibility from latest cameras, although it results in huge files, was pretty useful but files were not as sharp as native X3F developed in Sigma Photo Pro.
What improvements have you made? Processing RAW sluggishness was always an issue from de-Bayering. Before RAW, my hell was DPX image sequences. This was pre-SSD, so I/O was painful opening/closing individual frames in realtime. The best improvement of processing RAW I've experienced was NVMe SSDs.
This is just depressing to me having literally grown up in a darkroom.
"For years my process looked like this: load film and take photos, ....[blah blah blah]... the exported image."
"At first this was an exciting process for me. Then as the number of rolls increased, so did my effort to do this for 36 frames per roll."
I shot black and white film sine the 70's, medium and 35mm. I would develop the negatives and prints myself. The complete process was a joy. I never printed every shot, but I put care into each shot I processed. I was careful when I took a photograph, because the cost limited how much I shot. This made me a better photographer.
I later started scanning my film with a Nikon CoolScan (this was in the late 90's) and i already started hating it. Then I started full digital and now I do not shoot anymore (I was semi professional with Art work published in national magazines).
"My part is now the part I can thoroughly enjoy, which is looking at the results I’ve snapped and finding inspiration to snap more."
Why do any of this just shoot digital if you do not care about the process?
Some aspects of the process seem more like labor than a form of self-expression. I think if you are into the limitations of shooting film photos it makes sense.
I agree in part, in that it is sad that this person does not have access to a darkroom. As someone who is also now shooting film and then camera scanning, I would love to have access to a darkroom. It's just a compromise film shooters have to make, and often at no fault to them. It's either too expensive (which the negatives already are), or too far away/too big to fit in modern homes, or more likely both.
We're just grateful that film is still available at all.
When I showed my Konica Hexar to a younger colleague, he said, but how do you get the pictures into the computer. It was like a world opened for him when I said that I don't.
nice work on the website, micro animation and the dithering effects are clean!
weird, my cursor disappears over that website.
website is actively setting the cursor CSS style to none.
Very user-hostile.
It replaces the cursor with a custom one. It's not removing the default to just remove it.
- https://shannadige.com/blog
- blog page dont work
Interesting project! I scan 35mm and medium-format film with a mirrorless camera, macro lens, and Lomography film holder, then convert with Negative Lab Pro in Lightroom. I’m happy with the results, but the Lightroom subscription has me considering writing my own converter.
Could you share more about your NumPy pipeline, or publish the code? I’m particularly curious about how you use the blank film reference and roll-level measurements to handle the orange mask, color balance, and tone curves. Do you use camera/scanner calibration profiles or film-stock-specific adjustments, or estimate everything from the scans themselves?
Also, your screenshot appears to show an OpticFilm 7400. Would you recommend it, and roughly what did you pay? Have you tried camera scanning? I’ve been considering automating film advance and capture on my setup, but consistent color conversion is the part I’m least confident about.
Can you please not post AI-generated or AI-edited comments to HN? It's not allowed here - see https://news.ycombinator.com/newsguidelines.html#generated and https://news.ycombinator.com/item?id=47340079.
Of course, it's impossible to know for sure what was LLM processed or not, but some of your posts (like this one) have been getting classified that way.
It is a very sensible and reasonable comment- literally all questions I'd want to ask to replicate the setup, in a format that's easy to parse. If the author did use LLM it did not substantially alter the content of their question.
I thought it was a reasonable comment and, like you, I thought they were good questions. I haven't followed what kind of watermarking LLMs are putting in their output that might be a telltale for their use so maybe it's readily apparent in a way that isn't to me.
I'd be mortified if a comment I made was accused of being LLM-edited or "created". I don't use any of that junk but if I'm reading LLM output and not realizing it I just might be adopting some of its mannerisms and styles with realizing it. That's chilling.
I ended up discussing it with the moderators and they interpret "transcribe and formatting" as contributing enough that they want to "educate" the user to not do that.
In my mind, using an LLM to lightly format a legitimate questions falls below any threshold I'd apply to AI-written writing. I often dictate HN messages to my phone, and in my case, personally edit the message (tediously), but if there was a tool that produced text that looked lightly LLM, I wouldn't care about it at all.
It's not a big deal because in five years, the idea of chiding a user for using an LLM to enhance their text is going to be considered ridiculous. I've lived through enough computer revolutions to know this; once, I didn't get a job (in ~1989) because I could type 80wpm but made a bunch of errors... on a typewriter! The agency told me they needed people who could type 80wpm on a typewriter.
For whatever it's worth: It's definitely phrased a bit strangely but it passes my own sniff test. If they really are using a dictation-oriented method for getting text into a box (as they wrote in a followup reply to themself) then that may adequately explain the strangeness.
There was a time when scanning and [photographic] printing of 35mm film negatives was what I did for a living; it's likely that I've touched more film than most people ever will. I think they're asking questions that are a good combination of solid, thoughtful, and practical.
I don't know what indicators HN is using but Pangram says this is AI text.
Who cares? The comment stands on its merit.
Not on HN; generated comments are against the guidelines here.
It wasn't a generated comment at all! Read the comment, and then what the author wrote elsewhere saying they spoke it into their phone. https://news.ycombinator.com/item?id=49948614
"To reiterate, those were legit questions. I used voice dictation to my phone, with an app that transcribed and formatted my message."
harassing a user for doing that is just unncessary and I dont't think it violates the site's guidelines. Further, the comment itself was high quality, and contributed to the discussion.
This is not a hill I'm interested dying on but I don't understand how voice dictation and transcription is setting off Pangram like that.
It seems most plausible if “formatted” is doing some heavy lifting in that sentence.
It's not a hill I want to die on either, ultimately the moderators run the site and make the rules and we comply with them at their pleasure.
dang believes that the "transcription and formatting" adds a signature. I entered into Gemini Pro (at the highest level of reasoning) and it calls it human written text and provides a far more detailed description of why: "If an LLM was used here, it was likely just used as a grammar checker or "polisher" rather than a generator. If we had to flag anything, it would be this section:... .his reads like a standard, high-quality comment from a technical forum like Hacker News or Reddit's r/analog. If the user utilized an LLM, they likely wrote the entire comment themselves and merely passed it through a tool like Grammarly or ChatGPT with a prompt like "Fix my typos" without letting it change their voice or vocabulary."
I tried ChatGPT and Claude (all the most recent models I have access to) and they all agree: human text, slightly modified to be more readable.
Looking at Pangram's output, it only mentioned the last sentence as AI generated:
"Would you recommend it, and roughly what did you pay? Have you tried camera scanning? I’ve been considering automating film advance and capture on my setup, but consistent color conversion is the part I’m least confident about."
That's absolutely a sentence a human expert might write. Even if it wasn't, the content contributes to the discussion. Seriously, why would grammar checkers for voice dictation even be remotely an issue?
I used voice dictation to transcribe my rambling thoughts on the article, which was thereafter re-arranged into a still verbose but somewhat more coherent reply. I should have taken the time to reword it properly - my laziness is on me.
I was not aware the rule against AI-assited text at the time, and will be more careful next time. Nonetheless, I find it unfortunate that we've spend more time talking about AI usage in a comment, than the blog which prompted it.
In case it helps at all: I post that type of reply (https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...) precisely when the commenter is a good contributor who we don't want to get dinged by HN's software. Usually it turns out that people weren't aware of the rule (as was the case here).
(I've marked the subthread offtopic and collapsed it now)
I can see why this comment would trigger people's AI alarm, especially if it fits a pattern for this user. The questions seem legit at first glance, but completely uninteresting. Too general and specific at the same time, if you see what I mean.
Dang, would you reconsider your message here? I think it was uncalled for and chilling to legitmate discourse.
To reiterate, those were legit questions. I used voice dictation to my phone, with an app that transcribed and formatted my message.
You should check out the negpy project. It in my view has the best inversion process. It claims to emulate the whole analog print chain in the inversion process. They have a fold works cited.
It also automates most of the process. It works with SANE, some other legacy scanners, and camera scanning. It can even do trichrome scans automatically.
Thank you!
I don't have a public writeup, but the general approach for orange mask removal is: scan a blank unexposed frame from the same roll, take its per-channel mean as your reference white, then divide each pixel by that reference per channel before doing anything else. That normalizes the mask out instead of trying to subtract a fixed color. After that, a per-roll linear stretch (black point from the darkest scanned frame, white point from the lightest) gets you a rough base. Tone curve is the hard part: NLP uses a nonlinear S-curve tuned per stock, and matching that from scratch means a lot of trial and error with reference images you know the expected look of. If you want a quick win before rewriting things, Lightroom lets you write develop settings to XMP so you're not locked into the catalog even if you cancel later; the actual RAW/TIFF processing engine is what needs a subscription, not the metadata.
A colorist I worked with did something similar by using reference film stock of the same film that was being scanned. This was anime 16mm film prints from the 80s that had been scanned multiple times and color set on arbitrary decisions by who ever was working with the film at the time. After using the reference stock to base decisions, the director said it was the closest he had seen to what he wanted.