Hi JuanHi John,
This is doable, although a bit complex in JavaScript. XNML is an XML-based format, so even if we (still) have no XML support in our JavaScript runtime, that is not a practical problem because you are only interested in generating these files, not in decoding or interpreting them, so this is just a matter of writing a plain text file.
The actual problem is generating the matrices of large-scale local normalization functions. These matrices are actually smooth and small images, which you can generate by interpolation of the normalization data, as our LocalNormalization tool does.
All of these tasks are completely automated in our PCL development framework. If you can read C++, take a look at the PCL implementation:
include/pcl/LocalNormalizationData.h · master · PixInsight / PCL · GitLab
PixInsight Class Librarygitlab.comsrc/pcl/LocalNormalizationData.cpp · master · PixInsight / PCL · GitLab
PixInsight Class Librarygitlab.com
and also at our LocalNormalization tool:
src/modules/processes/ImageCalibration/LocalNormalizationInstance.cpp · master · PixInsight / PCL · GitLab
PixInsight Class Librarygitlab.com
If you describe the way you are doing and designing your implementation, maybe I can help you with this.
As a side note, have you considered the possibility of working with PCL/C++ instead of PJSR?
Hi Juan
Yes, I really should have a go at PCL/C++ in the future. The main problem is getting over the initial hurdle of creating a trivial C++ module, compiled and linked into PixInsight. It may well be a great deal easier than I fear! It would also be useful for me to get back up to speed with C++. It is over 20 years since I last used it. I still remember the concepts, but I will need to investigate how things have moved on - decide on a good IDE for C++ (Windows 10), and learn 'newer' concepts like auto pointers (I really am out of date!)
The XNML was for a script I am developing, NormalizeScaleGradient (an alternative to Local Normalization). It has turned out to be much harder to produce the results I am after than I expected. Not least because the normalization routines that already exist in PixInsight are extremely good at what they do. I am not satisfied with my first attempt, but I am not giving up yet.
At least for the time being I will not attempt to add XNML. I have other more important issues to solve.
Thanks for your help
John Murphy
Any suggestions for a free C++ ide for Windows 10?Not wanting to start a language war, but as with most modern developing languages, you don't have to use new features just because they are new, auto is a good example in C++, I feel it doesn't bring enough to the party over making for less radable/maintanable code.
Any suggestions for a free C++ ide for Windows 10?
Not wanting to start a language war, but as with most modern developing languages, you don't have to use new features just because they are new, auto is a good example in C++, I feel it doesn't bring enough to the party over making for less radable/maintanable code.
for ( auto item : items )
item.DoSomething();
class Base
{
...
virtual int Foo() const;
...
};
class Derived : public Base
{
...
int Foo() const override;
...
};
Any suggestions for a free C++ ide for Windows 10?
Any individual developer can use Visual Studio Community to create their own free or paid apps.
An unlimited number of users within an organization can use Visual Studio Community for the following scenarios: in a classroom learning environment, for academic research, or for contributing to open source projects.
For all other usage scenarios:
In non-enterprise organizations, up to five users can use Visual Studio Community. In enterprise organizations (meaning those with >250 PCs or >$1 Million US Dollars in annual revenue), no use is permitted beyond the open source, academic research, and classroom learning environment scenarios described above