extract values at specific coordinates from a 3d image
This algorithm allows to extract grey level values from an input 3d image.
If input image is a multi volume image (ie. sequence or color image), each plane is processed separatly.
Given a collection of input 3d coordinates
, algorithm extracts an associated collection of grey level values
from input image
. User can specify an optional interpolation policy
(see enumerate ipsdk::imaproc::attr::eInterpolationPolicy) used to extract values from image.
Example of Python code :
Example imports
import PyIPSDK
import PyIPSDK.IPSDKIPLUtility as util
Code Example
inImg = PyIPSDK.loadTiffImageFile(inputImgPath)
inCoordsColl = PyIPSDK.createCoords3dColl()
inCoordsColl.addCoords(50.1, 50.7, 30.2)
inCoordsColl.addCoords(75.6, 75.8, 41.0)
inCoordsColl.addCoords(120.1, 90.4, 10.9)
outGreyValues1 = util.extractImg3dValues(inImg, inCoordsColl)
for i in range(0, len(inCoordsColl.coll)):
print("Grey value at {" + str(inCoordsColl.coll[i].x) + ", " +
str(inCoordsColl.coll[i].y) + ", " +
str(inCoordsColl.coll[i].z) + "} = " +
str(outGreyValues1.coll[i]))
outGreyValues2 = util.extractImg3dValues(inImg, inCoordsColl, PyIPSDK.eInterpolationPolicy.eIP_Cubic)
for i in range(0, len(inCoordsColl.coll)):
print("Grey value at {" + str(inCoordsColl.coll[i].x) + ", " +
str(inCoordsColl.coll[i].y) + ", " +
str(inCoordsColl.coll[i].z) + "} = " +
str(outGreyValues2.coll[i]))
Example of C++ code :
Example informations
Header file
#include <IPSDKIPL/IPSDKIPLUtility/Processor/ExtractImg3dValues/ExtractImg3dValues.h>
Code Example
pInCoordsColl->addCoords(50.1, 50.7, 30.2);
pInCoordsColl->addCoords(75.6, 75.8, 41.0);
pInCoordsColl->addCoords(120.1, 90.4, 10.9);
DoublesPtr outGreyValues1 = extractImg3dValues(pInImg, pInCoordsColl);