HDR-fusion - when to use what method? - hdr

I am studying different methods for hdr-fusion in the opencv-tutorial here:
https://docs.opencv.org/master/d2/df0/tutorial_py_hdr.html
I am also reading various articles. However, I don't seem to find any information on when I such use which method, i.e. some overview of the pros and cons of each method. The methods are Debevec, Robertson, Mertens fusion. And the tonemapping methods are TonemapDrago, TonemapMantiuk and TonemapReinhard.
Does anybode know how to choose the right method without a week of trial and error?

Related

Should I make requests to this API/change the structure of this API/use a DB instead?

That's what my Django Rest Framework API looks like. I want to use information from it on my website(where users can search for a flight and they will see the appropriate results). Of course I can filter the API in many ways, but the problem is I don't know what to do when it comes to searching for indirect flights. I also don't know what functions to use. I've already used fetch to create autocomplete but that's a different situation. Can fetch be used here too? Or maybe I should create the API in another way? And of course there's an option of using a db, the easiest one for me, but I would prefer using API. Maybe that's a dumb question, but I'm just confused

Is there a way to pull multiple Hamlet and Cassius files into a webpage using scaffolds?

I'm trying to use Atomic Design with Yesod Scaffolds. From what I can tell, I should be able to do it by making widgets, or using interpolation. However; I can't really seem to find much documentation regarding this, and the book on yesodweb isn't really providing much in the way of insight.
If you're unaware of Atomic Design, I've linked it above for you to check out. Essentially I'm wanting to create separate Hamlet and Cassius files, then pull them altogether and render the website.
The widgetFile function provided with the Yesod scaffold will automatically join Hamlet, Cassius, Lucius, and Julius files together.
You can see plenty of examples of this here: https://github.com/search?q=widgetFile+language%3Ahaskell&type=Code

Set BatchSize for specific function of a WebJob

Is is possible to set batch size on function level within a webjob?
I have multiple functions in a webjob, some of them depend on other external APIs which does not allow a high degree of parallelization.
I have seen only the Singleton attribute which is not exactly what I am looking for.
just figured out that this is possible with a custom QueueProcessorFactory I already use.
An example from MS is here:
https://github.com/Azure/azure-webjobs-sdk-samples/blob/master/BasicSamples/MiscOperations/CustomQueueProcessorFactory.cs
Having attributes for this would be nice ;-)
Alex
Yeah, custom QueueProcessor instances are designed were designed to be the "escape hatch" allowing you full control in advanced scenarios. We want to keep the mainline paths simple and easy to use, while allowing you to drop down and deeply customize when needed. Adding a bunch of override options on QueueTriggerAttribute itself would be possible, but could also complicate the programming model.
If you would like to suggest a change, I suggest you log issues in the public repo: https://github.com/Azure/azure-webjobs-sdk/issues
Thanks :)

Reference on Tutorial on CMFCToolbar customization?

I have looked through all possible MSDN articles, and have browsed a lot of web content in order to find tutorial on usage of the class CMFCToolbar.
There is very little information, and it almost is about basic features of the class.
I am looking for the following info:
General question:
How to implement a toolbar with custom images (bitmaps that are loaded from a file) that is based on the CMFCToolbar.
Sub-questions:
What methods I need to overload, what other classes I need to use
(do I need CMFCToolBarButton, CMFCToolBarImages).
Could you please give me references on tutorials, or provide information based on your experience.
Thank you in advance!
The Feature Pack controls (CMFCToolbar) are part of the BCG toolkit. You oshould be able to find information and samples at their web site.

C++ code visualization

A sort of follow up/related question to this.
I'm trying to get a grip on a large code base that has hundreds and hundreds of classes and a large inheritance hierarchy. I want to be able to see the "main veins" of the inheritance hierarchy at a glance - not all the "peripheral" classes that only do some very specific / specialized thing. Visual Studio's "View Class Diagram" makes something that looks like a train and its sprawled horizontally across the screen and isn't very organized. You can't grok it easily.
I've just tried doxygen and graphviz but the results are .. somewhat similar to Visual Studio. I'm getting sweet looking call graphs but again too much detail for what I'm trying to get.
I need a quick way to generate the inheritance hierarchy, in some kind of collapsible view.
Why not just do it manually, it is a great learning experience when starting to work with a large code base. I usually just look at what class inherits from what, and what class contain what instances, references or pointers to other classes. Have a piece of paper next to you and get drawing...
Instead of going into the full Class Designer tool, just use the "Class View" or the "Object Browser" in Visual Studio - they present fully collapsible class heirarchies.
A good UML tool should do the trick.
Here is a list of generic UMl tools: http://en.wikipedia.org/wiki/List_of_UML_tools
There are lots out there, all with varying feature sets. Try playing with a few to see if you get the output you desire. If they free ones fail you, you might have to shell out for a good commercial grade UML tool
You can try CppDepend, it doesn't create a class hierarchy like Doxygen does but it can show 'the big picture' for your project, it also shows some code metrics.
I've had most success with valgrind and kcachegrind to do this. You run valgrind against your debugging binary, perform whatever actions your interested in, then import the output into kcachegrind to see everything you'd ever want to know about who called what, how often, and when. Plus, because your doing it dynamically, it catches cases that static analysis likely wont.
I've also had some success using Enterprise Architect's reverse engineering features, although this doesn't end up nearly as nicely (but you get a workable UML model which is nice!).
And finally, a tool called "Understand". This is pretty good at static OO analysis, but I think quite pricey and not that widely used.
Try Source Insight it is possible to configure the depth of the generated graph in this tool.
See also C/C++ call-graph utility for Windows platform
Check out SourceNavigator, it's open source, works on a bunch of platforms and has a Hierarchy Browser, a Class Browser, a Cross-Reference Browser and more that will allow you navigate and understand the code.
I'm using it for some time now especially when I have new code to go through and understand.
For a reasonably priced commercial product, you may want to check out SolidSX from Vizlogix (www.vizlogix.com). (If you are outside of North America, go to SolidSource -- www.solidsourceit.com.)
It generates a radial diagram that can be collapsed and expanded. It also integrates with Visual Studio (both BSC and .NET).
What's your definition of 'main vein'? You either want a graph reducer or skeletizer (you could find or write one and apply it to what Doxygen and the rest produce) or, 'main vein' has something to do with the function of the code and, I don't think an automated tool can help you with that. Unless you can point out to it 'These are the important bits that do input and output, show me only elements that are one or two steps away from the paths between these'. Hum, sounds like a cool tool to write :)
... the inheritance hierarchy, in some kind of collapsible view.
again, a sweet idea for a tool!