Arnaud is right, BandMathX is a new feature coming with version 4.4.0. This is only a source release, there won't be binary packages. So you will have to build OTB yourself.
Christophe. (PS: in my previous message, please replace "viewing angle" by "solar angle" ^^). Le jeudi 30 avril 2015 09:03:01 UTC+2, Arnaud Durand a écrit : > > Ginny, > > BandMathX is available since the version 4.4.0. > I suppose you are on 4.2.1. > > You have to build OTB from sources if you want to use BandMathX, because I > believe windows binaries of v4.4.0 are not available yet. > > Arnaud > > On Wednesday, April 29, 2015 at 8:49:41 PM UTC+2, GiNN wrote: >> >> Thank you for that explanation Christophe, >> >> Lastly, how do I go about launching the BandMathX application? >> I have otb and monteverdi installed via the Osgeo4w 64 bit installer. I >> only see the BandMath application. Has BandMathX been rolled out to Osgeo4W >> yet? >> >> Cheers, >> >> Ginny >> On Apr 29, 2015 5:13 AM, "Christophe Palmann" <[email protected]> >> wrote: >> >>> >>> Basically, the purpose of radiometric correction (or optical >>> calibration) is to "get rid of" some parameters (like viewing angle, >>> earth-sun distance, and so on) that obviously affect the values of the >>> pixels, but that must not be taken into account for a change detection task >>> for instance, or supervised classification... and so on. Depending on the >>> kind of product to be used, radiometric correction is already performed or >>> not; but it is up to the user to check this. >>> >>> If the answer is no, then the user have to apply this calibration, after >>> having found every required parameters from the images metadata. >>> >>> Christophe. >>> >>> >>> >>> >>> >>> Le mardi 28 avril 2015 21:37:54 UTC+2, GiNN a écrit : >>>> >>>> Thank you Christophe, >>>> >>>> With your and Arnaud's explanation I grasp how pixels are handled now. >>>> I will run a test an give you feedback. >>>> >>>> About my expression: >>>> The images are WorldView2 and collected over a large period (almost two >>>> years). I believe they are already calibrated. I found this equation in a >>>> paper by digital globe to correct the solar geometry at the collection >>>> time >>>> (d = earth-sun distance and e = sun elevation angle), so the images will >>>> have more or less the same colors. So basically, a radiometric enhancement. >>>> >>>> Is this the same as an optical calibration? I took a look at the >>>> cookbook and the formula for TOA radiance to reflectance does look similar. >>>> I am new to satellite imagery and I just need the end product to be >>>> appealing to the eye. (I.e. similar colors) >>>> On Apr 28, 2015 10:46 AM, "Christophe Palmann" <[email protected]> >>>> wrote: >>>> >>>>> Hi Gin and Arnaud, >>>>> >>>>> Sorry for the late reply. >>>>> >>>>> As Arnaud said in his previous message, images are handled with >>>>> n-dimensional row vectors. >>>>> >>>>> So you can use the 'mlt' or 'dv' operators to perform multiplications >>>>> (divisions) between vectors and scalars; the correct expression is simply: >>>>> >>>>> 1) *im1 mlt d2 dv cose* or * im1 mlt (d2/cose)* >>>>> Here, im1 is similar to {pix_from_band1, pix_from_band2, >>>>> pix_from_band3}. I think that the second expression is faster. >>>>> >>>>> 2) the expression *im1 mlt {d2} dv {cose}* is also correct, as I >>>>> designed those operators to process 1d vectors as scalars (both for >>>>> convenience and to make the operators more robust) >>>>> >>>>> 3) finally, a solution close to the one of Arnaud is *im1 mult >>>>> {d2,d2,d2} div {cose,cose,cose}* >>>>> Here, the operators mult and div perform element-wise multiplications >>>>> (divisions) between vectors. But *im1 * {d2,d2,d2} / {cose,cose,cose}* >>>>> is not correct ! (the multiplication or the division of two row vectors >>>>> aren't defined, you must use mlt/dv or mult/div operators). >>>>> >>>>> Don't forget to define the constants 'd2' and 'cose' with the method >>>>> SetConstant if you use the filter, or just provide a txt file to the >>>>> field >>>>> 'import context' if you use the application. You can also define 'my_e', >>>>> and use cos(my_e) within the above expressions (*but don't define >>>>> 'e', because this constant already exists in muparserx!*), >>>>> nevertheless it is better to evaluate cose once and for all. >>>>> >>>>> Finally, looking at your expression, you really should consider the >>>>> OpticalCalibration application, which will do the job faster than >>>>> BandMathX >>>>> :-) >>>>> >>>>> Christophe. >>>>> >>>>> >>>>> >>>>> >>>>> Le jeudi 23 avril 2015 14:47:15 UTC+2, Arnaud Durand a écrit : >>>>>> >>>>>> Gin, >>>>>> >>>>>> Each pixel of your image is handled as a n-dimensional row vector, >>>>>> with n the number of bands in your image. {n1, n2, n3, ...} is the >>>>>> syntax >>>>>> of muParserX to declare row vectors that you can fill with scalars >>>>>> assigned >>>>>> by band. >>>>>> >>>>>> Hope it helps. >>>>>> Arnaud >>>>>> >>>>>> Le jeudi 23 avril 2015 14:10:28 UTC+2, GiNN a écrit : >>>>>>> >>>>>>> Thank Arnaud, >>>>>>> >>>>>>> And yes, d and e are scalars. In fact, they are constant for the >>>>>>> entire image, while the image has three bands. >>>>>>> >>>>>>> If I understand you correctly, this still counts as a vector >>>>>>> transformation? >>>>>>> On Apr 23, 2015 7:50 AM, "Arnaud Durand" < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> Hi GiNN, >>>>>>>> >>>>>>>> I'm not sure that it is possible with such a simple expression, as >>>>>>>> the doc said : >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> *For instance, it is not possible to add vectors of different >>>>>>>> dimensions (this implies the addition of a row vector with a column >>>>>>>> vector),or add a scalar to a vector or a matrix, or divide two >>>>>>>> vectors, and >>>>>>>> so on...Thus, it is important to remember that a pixel of n components >>>>>>>> is >>>>>>>> always represented as a row vector.* >>>>>>>> >>>>>>>> However, if you know the number of bands in your image, and if d >>>>>>>> and e are scalars, you might try to use vector syntax in your >>>>>>>> expression >>>>>>>> like that : im1*{d^2,d^2,d^2,d^2}/{cos e, cos e, cos e, cos e} >>>>>>>> >>>>>>>> Arnaud >>>>>>>> >>>>>>>> Le mercredi 22 avril 2015 21:02:15 UTC+2, GiNN a écrit : >>>>>>>>> >>>>>>>>> >>>>>>>>> I have three-band images and I want to apply the same expression >>>>>>>>> to each band and get a three-bad output. >>>>>>>>> I am just starting with OTB and Monteverdi. Used installer on a 64 >>>>>>>>> bit W7 machine. >>>>>>>>> >>>>>>>>> The expression is very simple: output_pixel = >>>>>>>>> (input_pixel*d^2)/cos e >>>>>>>>> >>>>>>>>> I read the cookbook recipe, and concluded BandmahX is what I need. >>>>>>>>> But I am not sure how to formulate the expression so that the >>>>>>>>> application >>>>>>>>> goes through all pixels in all three bands. >>>>>>>>> >>>>>>>>> Any assistance is greatly appreciated. >>>>>>>>> >>>>>>>>> Gin >>>>>>>>> >>>>>>>> -- >>>>>>>> -- >>>>>>>> Check the OTB FAQ at >>>>>>>> http://www.orfeo-toolbox.org/FAQ.html >>>>>>>> >>>>>>>> You received this message because you are subscribed to the Google >>>>>>>> Groups "otb-users" group. >>>>>>>> To post to this group, send email to [email protected] >>>>>>>> To unsubscribe from this group, send email to >>>>>>>> [email protected] >>>>>>>> For more options, visit this group at >>>>>>>> http://groups.google.com/group/otb-users?hl=en >>>>>>>> --- >>>>>>>> You received this message because you are subscribed to a topic in >>>>>>>> the Google Groups "otb-users" group. >>>>>>>> To unsubscribe from this topic, visit >>>>>>>> https://groups.google.com/d/topic/otb-users/UHugkLOJEmw/unsubscribe >>>>>>>> . >>>>>>>> To unsubscribe from this group and all its topics, send an email to >>>>>>>> [email protected]. >>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>> >>>>>>> -- >>>>> -- >>>>> Check the OTB FAQ at >>>>> http://www.orfeo-toolbox.org/FAQ.html >>>>> >>>>> You received this message because you are subscribed to the Google >>>>> Groups "otb-users" group. >>>>> To post to this group, send email to [email protected] >>>>> To unsubscribe from this group, send email to >>>>> [email protected] >>>>> For more options, visit this group at >>>>> http://groups.google.com/group/otb-users?hl=en >>>>> --- >>>>> You received this message because you are subscribed to a topic in the >>>>> Google Groups "otb-users" group. >>>>> To unsubscribe from this topic, visit >>>>> https://groups.google.com/d/topic/otb-users/UHugkLOJEmw/unsubscribe. >>>>> To unsubscribe from this group and all its topics, send an email to >>>>> [email protected]. >>>>> For more options, visit https://groups.google.com/d/optout. >>>>> >>>> -- >>> -- >>> Check the OTB FAQ at >>> http://www.orfeo-toolbox.org/FAQ.html >>> >>> You received this message because you are subscribed to the Google >>> Groups "otb-users" group. >>> To post to this group, send email to [email protected] >>> To unsubscribe from this group, send email to >>> [email protected] >>> For more options, visit this group at >>> http://groups.google.com/group/otb-users?hl=en >>> --- >>> You received this message because you are subscribed to a topic in the >>> Google Groups "otb-users" group. >>> To unsubscribe from this topic, visit >>> https://groups.google.com/d/topic/otb-users/UHugkLOJEmw/unsubscribe. >>> To unsubscribe from this group and all its topics, send an email to >>> [email protected]. >>> For more options, visit https://groups.google.com/d/optout. >>> >> -- -- Check the OTB FAQ at http://www.orfeo-toolbox.org/FAQ.html You received this message because you are subscribed to the Google Groups "otb-users" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/otb-users?hl=en --- You received this message because you are subscribed to the Google Groups "otb-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
