opencv图像处理时使用stringstream批量读取图片,处理后并保存
生活随笔
收集整理的這篇文章主要介紹了
opencv图像处理时使用stringstream批量读取图片,处理后并保存
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
簡介:
???????? 同文件輸入輸出流一樣,使用stringstream可以批量讀取圖片,處理后并進行保存。因為C++中頭文件 stringstream既可以從string讀數據也可向string寫數據,利于其這個特點,我們可以進行批量讀取和批量保存工作。
參考程序:
/*批量讀取圖片,進行均值濾波處理,并保存至指定目錄下*/ /*學習使用stringstream進行圖片的批量讀取與保存*/using namespace std; using namespace cv; int main() {string imageFileName;std::stringstream Strm;int image_count = 14;//圖片數量std::cout << "開始均值濾波處理........" << endl;//便于控制臺查看for (int i = 0; i!= image_count;i++){std::cout << "第"<<i+1<<"張處理成功"<< endl;//便于控制臺查看string filePath = "/home/ttwang/CameraCalibration/chess";//原圖保存路徑Strm<< i+1;Strm>>imageFileName;filePath+=imageFileName;filePath+=".bmp";Mat imageSource = imread(filePath);Mat newimage = imageSource.clone();blur(imageSource,newimage,Size(7,7));//均值濾波處理 Strm.clear();filePath.clear();string SaveFilePath = "/home/ttwang/CameraCalibration/blur/p";//處理后的圖片保存路徑Strm << i+1;Strm >> imageFileName;SaveFilePath += imageFileName;SaveFilePath += "_d.jpg";imwrite(SaveFilePath,newimage);}std::cout << "保存結束" << endl;return 0; }?
運行結果:
(1)終端運行:
(2)保存路徑【從下圖可以看到,處理后的圖片保存到了指定路徑】
ps:處理效果就不顯示了
?
轉載于:https://www.cnblogs.com/ilym/p/8339935.html
總結
以上是生活随笔為你收集整理的opencv图像处理时使用stringstream批量读取图片,处理后并保存的全部內容,希望文章能夠幫你解決所遇到的問題。