Proposal for Raw Therapee Tutorial Site

I’m new to Raw Therapee, and to processing RAW files in general. The easiest way for me to learn walk through each and every step to get from a RAW file to a fully-processed photo at the end. I really like videos that show how to do that, like https://www.youtube.com/watch?v=ccUv02QFMxs&t=345s and https://www.youtube.com/watch?v=V01w3VlZ0J4

I worked on a project recently where we automatically generated documentation from a configuration file, describing every step necessary to get from starting up the program to the final state. It seems to me that this idea could be adapted for Raw Therapee as well.

TUTORIAL CREATOR (PROPOSAL)

To create a tutorial, follow these steps:

  1. Create a directory (album) and place a single RAW file in it.
  2. Open the file in Raw Therapee.
  3. Reset the auto-Exposure (??)
  4. Save the current image (this is the “original”, the starting point of the tutorial).
  5. Make a few changes, and save the file. A timestamped jpeg and corresponding pp3 file are created in the tutorial directory (with the raw file).
  6. Repeat the previous step. Any saved file along the way could be considered final.
  7. Upload all the files from that directory to the tutorial website.

RT TUTORIAL WEBSITE (AUTHOR)

The website could have various types of users / roles. ADMIN, AUTHOR, STUDENT and VISITOR. ADMIN has access to the underlying database, accounts, etc., and the ability to modify anything on the website. The STUDENT account isn’t really needed initially, it’s mostly to keep track of what tutorials the student has already done, etc. VISITOR is anyone not logged in.

Tutorial authors create an account on the website, then go to a “create tutorial” page where they fill out some basic metadata (details about the original image and what they tried to accomplish using RT). When the upload the directory of the raw file, and the saved JPGs/PP3 files, The server then stores this information in a database / s3 / filesystem.

RT TUTORIAL WEBSITE (STUDENT, VISITOR)

Students can optionally log into the website. The tutorials are listed and searchable. The tutorial page consisted of a link to the raw file, then a list of JPEG photos and the detailed steps to get from one to the other using RT. For example

/“original” image, first jpeg/

  1. Open the Exposure tab (Alt-e)
  • Set the compensation to 1.52
  • Set Black to 6242
  1. Open the “Detail” tab (Alt-d)
  • Enable Noise Reduction
  • Set Quality to “High”

The photo should now look like this:

/2nd jpeg file/

  1. Open the Color Tab (Alt-c)
    Set the White Balance to “Cloudy”
    etc.

/3rd jpeg image/

Obviously, the steps are simply a “diff” between each pp3.

BENEFITS OF THIS APPROACH

For many RT experts, creating a great photo from a raw file is fairly easy. Creating a tutorial is a pain, though. Watching a video tutorial has problems, too – often the video is compressed, so it’s difficult to see the changes. It’s cumbersome for the author to explain where to go for each setting, yet if they don’t, it’s difficult for the beginner to navigate to the right place.

Generated tutorials can be multi-lingual, both in the instructions and the tabs / settings.
Each tab / setting can have a link to the RT documentation describing what that setting does.

CHALLENGES

One big disadvantage to this approach is that there’s no way to indicate how to interact with parts of the photo, like “zoom into the tree branches above the chimney (X,Y), then slide then enable Sharpening and set the sharpening radius to 1.14”. Perhaps “Snapshot” could be enhanced to include this kind of information if/when snapshots are persisted? Or the website could offer the author the ability to add annotations after uploading the tutorial directory. Or add a screenshot. Something like that – alas, it adds a lot of complexity, automation would obviously be preferable. (There are some other posts in this forum about saving a History rather than a set of ending values, this is somewhat related)

I’m sure there are others challenges, but hopefully other benefits, too.

My preferred development environment is Symfony, and I’m itchy to do a Symfony 4 project. Would love to get some feedback on the viability / value of something like this.

Thanks!

Tac

3 Likes

This is quite a proposal, and the detail is great. Clearly you’re a pro. :slight_smile:

I wonder: how much time would this save the author while authoring? It is important to explain why one chooses a tool and what the outcome you want is, which is the bulk of the tutorial.

Do I get this right, that a tutorial would basically consist of a jpeg after each step and the according pp3 file?

On another note there was a discussion about tutorials on the main site lately:

Just so we are clear, anyone is welcome to post tutorials to our main articles section on pixls.us! Please please please do so! Either @patdavid or I can help you if needed and can merge the commits or commit it for you!

1 Like

Well, not the corresponding pp3 file – that’d be too big and complicated. Instead, it’d be the difference between the previous jpeg and the current one, along with some auto-generated text that converted the settings to a readable narrative.

In other words, what exact steps does the reader need to take to convert from one image to the next, e.g.

  1. Open the Exposure Tab (Alt-e)
  2. Set the Compensation to 1.52
  3. Set Black to 6242

New photo here with the result of the above steps

I’ve been going through some of the video tutorials, and I often have to rewind a few seconds to figure out what I’m supposed to do to get to each tool and setting. So this would provide some text that could simplify the process.

Tac

For example, your tutorial at Enhancing local contrast vs. global contrast.

Duplicate the layer and desaturate it (copy this also into your channles stack for easy acces as mask). Invert the desaturated layer and set it to overlay mode. this will minimize global contrast (and also local contrast). Here is the result setting it to an opacity of around 50%.

Then you post the resulting jpeg file. The question is, if the corresponding pp3 file were available, would their be enough information in it to automatically generate the specific instructions of what to press? In this case, maybe not, maybe layers aren’t stored.

But here’s the part where it might work. On Enhancing local vs. global contrast - RT wavelets

We start with an image where all the basic settings have been done (exposure, sharpening, blablabla…)

Alas, that kind of stuff is what a beginner like me would like to see, and is a pain for an author like you to detail. So can we automatically generate what’s necessary to do the bla, bla, bla from a series of pp3 files? And if we can, is it worthwhile?

Tac

I have several issues with this thread:

  • The proposal too detailed. It’s entirely up to a person writing a tutorial to figure out the specifics of the implementation, to match their style and the material the tutorial aims to explain to the form the file structure should take and to the system which they’re using to write said tutorial.
  • The proposal is rooted in and based on a content management system which does not exist, whereas we already have several suitable systems in place (this wiki-style forum, RawPedia, etc.).
  • A good tutorial explains why you need to do something at that point, and how you should decide how to do that something. A good tutorial does not diff key-value-pair files which users shouldn’t be looking into anyway and it doesn’t focus on “click that, enter 42.98, press ctrl+foo”.
  • The proposal seems to revolve around the idea that you can disassemble a PP3 file, find the changes between two steps and automate an explanation. That is not possible for the reason stated above - explain the why and the how, not the what.
  • The issue raised about video tutorials, “often the video is compressed, so it’s difficult to see the changes”, is something which is entirely possible to avoid. It’s as if I said that the disadvantage of written tutorials is that the text is often too small and unreadable… use a larger font for the latter, use better compression and make more visible changes for the former.
2 Likes

What about having tutorials on rawpedia?

That isn’t really my call!

Drat. Given your prominence in this community, I was hoping for a more encouraging response.

Except for the fourth point, though, reasonable people can disagree. I didn’t think providing a detailed proposal would be a problem, and since I’m proposing to do the work and asking for community input, the fact that it’s a new workflow or CMS isn’t fundamentally a problem – many open-source projects exist because someone had a idea or a need and developed a solution. That was my intent, and wanted feedback before I started. And I guess I’ve received it.

The fourth point, though, is fundamental. As a rank beginner, I’m really struggling with understanding what to do when looking at a raw photo and trying to decide what to do next. If I could look at a database of paired photos and have a step-by-step description of what I needed to do to get from one to the other, I’d be very pleased.

Creating a series of steps from pp3 files, though, isn’t ideal. Better would be an annotated history, e.g. History and/or reset - seeing our footprints - #7 by RT-Noob, and use that as a starting point .

I like the way LightZone groups a series of JPEG’s with the original file, and wish RT had something like that – snapshots are incomplete, but maybe when they’re fleshed out they’ll have something like this.

Anyway, I appreciate the feedback on my idea, even if I’m disappointed with the actual response.

Tac

I think technically this is absolutely doable and it might be a fun project for you to play with Symphony and learn about RT.

But as @Morgan_Hardwood it’s missing the the core point of the tutorials. Looking at the pp3 you get the formula, the how for that specific raw, but it’s missing the why.

For instance a very common and important thing is to play with the exposure and black point of an image.
Set exposure to +0.71ev and blacks+100 is nearly pointless because it doesn’t generalize to other images. A good tutorial would how you for instance to expose a portrait for the faces. To make sure that the image is bright and crisp but nothing but spectacular highlights is clipping. Finding that point usually involves looking at the histogram and making trade offs.

Some of this could be solved by writing a description of the steps, but just recording a video is likely often easier to do and easier for viewers to understand.

2 Likes

Tac, I’m saddened by the lack of positive response to your proactive and (I believe) much needed offer to create some tutorials for the most basic aspects of RT. Yes, the critical responses point out valid issues with your approach, but the bottom line is that you want to help out new users and new users need that help. (I’ve used RT for a couple years and I know I’m still a new user; it’s bewildering.) A blessing and a curse of open source software like RT is that—with the rarest of exceptions—only experts ever contribute to the help docs and those docs thus are usually unhelpful for new users. That’s very definitely my experience with RT (and I’m a PhD; I’m not an idiot). You are offering to break the curse and I feel terrible that you might be being shot down on technicalities.

Please keep up your enthusiasm, Tac. And, RT experts, please realize that it’s folks like Tac who can enormously expand the reach of RT if we support them. Can we break this logjam?

Nobody said (or will ever say) “don’t create tutorials.” I’m sorry that’s the take-away you got from this thread. Please, everyone, write tutorials! We surely need more of them.

However, if what we get is another application to maintain, that probably isn’t going to work. There is a shortage of man power. The core dev team is a handful of people. @patdavid maintains the mediawiki instance. That’s about it. RT migrated their support here to pixls.us so they wouldn’t have to maintain their own forum. We don’t have enough people to maintain more webapps-- that’s a simple fact. Further, I don’t know if anyone here besides Tac has experience with Symphony.

We’d be super happy to have more tutorials on pixls.us (I can publish those, help out, or accept the pull request on github) or links to tutorials, or videos on our youtube channel. What we can’t handle is more infrastructure; it’s a time sink.

1 Like

paperdigits, I totally understand; the last thing RT (and that means its developers) needs is more complication. And you were absolutely clear in your encouragement for Tac and everyone else. As you said, “Please, everyone, write tutorials! We surely need more of them.” Amen!

And yet, yes, I did come away discouraged from reading this thread. I wish I had time to be an important part of the solution to this problem I’m calling out. I apologize if I am coming across as negative. I love that RT exists and I wish I could employ it better. I am certain that others could help me and I selfishly wish it were easier to get that help. Tac, can I entice you to work within the existing parameters to make RT more user-friendly?

1 Like

What is it that befuddles you? What do you think needs a tutorial?

Deeply important question. I apologize I can’t really engage as I need to make dinner and help my daughter to bed. I will try to address this later as it concerns us all as RT citizens.

I second what @paperdigits said.

If you look around in the forum there is currently been discussion about making a tutorial section and about making a youtube channel to collect good tutorials. So this topic is being thought about. I also encourage whatever @tacman1123 wants to do. As @Morgan_Hardwood mentioned his idea seems coupled to building something out of content some management infrastructure. I can’t help with that as I don’t know anything about content management stuff, as probably many others here do. So I can’t help with his idea, as again many others probably. Plus time is limited. I’ll take myself as an example, as I think I am one of the people who as posted more tutorials lately. I post one in maybe two months, roughly. That is simply because I don’t have more time. The same applies to all other members here, where some are already putting tremendous amounts of time into things related to this site and the programs supported by this site.

So to make a long story short. If anybody got a good idea, than do it. If somebody finds time and has skill to help, they will. If nobody will help thatn it is not out of disregard for newbies or snobbism.
Cheers and out!

We can always use more tutorials (and writing in general).

I love when anyone has the motivation to think about this and gets excited about contributing. As noted, it’s sorely needed for both learning and community engagement (vitally important in my opinion).

@paperdigits and @Morgan_Hardwood are right in terms of infrastructure support, setup, and maintenance. I’m not opposed to more additions if they are truly necessary and/or beneficial. On that note, I’m not sure something new is necessary.

That is, I think all of the necessary pieces are in place to support just about any type of tutorial writing that someone wants to do (if not, please let me know what and why so we can sort it out). Heck, you can even start a post (or even a PM to yourself) here on the site that will let you write just about as much as you’d like in markdown directly - even attach all the images you might need. And @paperdigits, @McCap, myself, and many others would be more than happy to assist in any way we can to get it published here.

You don’t have to be an expert to do this, btw. Many folks are beginning their first steps with RT and other software - so even written from the point of view of a complete novice documenting their steps and reasons would certainly help others (this is basically how I write all of my tutorials).

@Jonas_Wagner and @Morgan_Hardwood make strong points though, that the purpose and aesthetic choices are lost when simply describing steps to take. Without a why there is a disconnect from the steps that I think is invaluable to someone learning.

I know I can modify a tone curve. I know how I can modify it, but it’s harder to know why I would.

That why is what is valuable to people following a tutorial in most cases, in my opinion. This way the skills start to become transferable - possibly leading to new experiments that may yield greater things, or even help someone to define their own style from that understanding.

That was a lot of text. The short of it is: please, please, please, feel free to write, write, write (it’s the hardest part - not the technology), and keep in mind that you can always ping me or any of the others here, directly if needed, and we’ll do whatever we can to help you make your tutorials a reality (and be super-grateful in the process). Don’t hesitate to poke us.

5 Likes

Yes, exactly this. You only get to do something for the first time once!

1 Like