Convert a batch of RGB images to Grayscale?

Would something like this work for you?

pathToFiles = "/yourPath/..";
SetDirectory[pathToFiles];
newPath = FileNameJoin[{pathToFiles, "newPath"}];
If[!DirectoryQ[newPath],
	CreateDirectory[newPath];
];
files = FileNames["*.jpg", pathToFiles];
Export[FileNameJoin[{newPath, FileNameTake[#, -1]}], ColorConvert[Import[#], "Grayscale"]] & /@ files

[referenced from here] ( Import images, use the GradientOrientationFilter and export them? )