There is a (somehow mind twisting) technique to expand string lists to arrays by replacing the spaces (or any other char) between the list elements with a count and a set to form the array.
From your lists and the for it is unclear if you want a 0 or 1 based index.
(more easy would be a for /l %%A in (2,1,10) Do ...
)
For better understanding I used shorter variable names and echo the split'ed python command to several lines.
:: Q:\Test\2018\07\05\SO_51191502.cmd
@Echo off & SetLocal EnableDelayedExpansion
set i=0&Set "ImgIn= 1 2 3 4 5 6 7 8 9 10"
Set "ImgIn=%ImgIn: ="&Set /a i+=1&Set "ImgIn[!i!]=%"
:: Set ImgIn
set i=0&Set "ImgOut= 2 3 4 5 6 7 8 9 10 11"
Set "ImgOut=%ImgOut: ="&Set /a i+=1&Set "ImgOut[!i!]=%"
:: Set ImgOut
set i=0&Set "ImgNext= 002 003 004 005 006 007 008 009 010 011"
Set "ImgNext=%ImgNext: ="&Set /a i+=1&Set "ImgNext[!i!]=%"
:: Set ImgNext
For /L %%A IN (1,1,10) DO (
Echo python batchLayer4ThirdVideo.py ^
--input_image !ImgIn[%%A]! ^
--next_undreamed_image !ImgNext[%%A]! ^
--output_image !ImgOut[%%A]!
)
Sample output:
> Q:\Test\2018\07\05\SO_51191502.cmd
python batchLayer4ThirdVideo.py --input_image 1 --next_undreamed_image 002 --output_image 2
python batchLayer4ThirdVideo.py --input_image 2 --next_undreamed_image 003 --output_image 3
python batchLayer4ThirdVideo.py --input_image 3 --next_undreamed_image 004 --output_image 4
python batchLayer4ThirdVideo.py --input_image 4 --next_undreamed_image 005 --output_image 5
python batchLayer4ThirdVideo.py --input_image 5 --next_undreamed_image 006 --output_image 6
python batchLayer4ThirdVideo.py --input_image 6 --next_undreamed_image 007 --output_image 7
python batchLayer4ThirdVideo.py --input_image 7 --next_undreamed_image 008 --output_image 8
python batchLayer4ThirdVideo.py --input_image 8 --next_undreamed_image 009 --output_image 9
python batchLayer4ThirdVideo.py --input_image 9 --next_undreamed_image 010 --output_image 10
python batchLayer4ThirdVideo.py --input_image 10 --next_undreamed_image 011 --output_image 11