IDL-Python Bridge: problem with the ENVI function. [message #92916] |
Wed, 23 March 2016 04:46  |
loreberna
Messages: 2 Registered: March 2016
|
Junior Member |
|
|
Hi all,
my aim is to use a script written in IDL, into python:
IDL code:
PRO PS_GS
; Start the application
e = ENVI()
;Generate the roi from a vector file
; Open a vector file
file_vec = Filepath('Sic_Trapani.shp', ROOT_DIR = 'E:\mydirectory\')
vettore = e.OpenVector(file_vec)
; Get the task from the catalog of ENVITasks
Task_VtoR = ENVITask('VectorRecordsToROI')
; Define inputs
Task_VtoR.INPUT_VECTOR = vettore
; Define outputs
Task_VtoR.OUTPUT_ROI_URI = Filepath('roi_roi.xml', ROOT_DIR = 'E:\mydirectory\')
;Run the task
Task_VtoR.Execute
END
The above code, launched into IDL command prompt, works correctly.
I want make a python script that:
- option 1) launch the above idl .pro script
- option 2) use the IDL to Python Bridge sintax.
In the first case, using the `subprocess.call("idldirectory\idl.exe")` command, i can open the IDL prompt into the windows command prompt. But i can not execute any IDL function like a simple `PRINT, 'hello'`.
In the second case, i write the following poython code:
import subprocess
from subprocess import call
import idlpy
from idlpy import IDL
e=IDL.ENVI()
msi_file = """IDL.Filepath(mydata.tif", ROOT_DIR = 'mydirectory')"""
msi_raster = IDL.OpenRaster(msi_file)
The instruction `e=IDL.ENVI()` work correctly, in fact an Envi setion starts.
The instruction `msi_file = """IDL.Filepath(mydata.tif", ROOT_DIR = 'mydirectory')"""` work correctly.
My problem is with the OpenRaster instruction. It is an ENVI instruction and not an IDL instruction. So, IDL.OpenRaster does not work, and i do not have any solutions.
I have modified the code like:
msi_raster=IDL.ENVI().OpenRaster(msi_file)
The result is the following error message:
Impossible find the access point
??0LTISceneBuffer@LizardTech@@QEAA@AEBVLTIPixel@1@IIPEAPEAX@ Z
into the dynamic link library lti_DSDK.dll
Googling i have found this site:
Malware scan of gdal110.dll
Any help or suggestion? Thanks
|
|
|