allow arbitary calcurve points, change calcurve format a bit
This commit is contained in:
15
src/main.cpp
15
src/main.cpp
@ -275,10 +275,19 @@ int perfromOperation(int operation, char** fileNames, const Config& config)
|
||||
}
|
||||
else if(operation == CREATE_CURVE)
|
||||
{
|
||||
cv::Mat curve = cv::Mat::zeros(2, 10, CV_32FC1);
|
||||
std::cout<<"how many coordinate pares are required?\n> ";
|
||||
int num = 0;
|
||||
std::cin>>num;
|
||||
if(std::cin.fail())
|
||||
{
|
||||
std::cin.clear();
|
||||
std::cout<<"invalid number";
|
||||
return -1;
|
||||
}
|
||||
cv::Mat curve = cv::Mat::zeros(2, num, CV_32FC1);
|
||||
float* keys = curve.ptr<float>(0);
|
||||
float* values = curve.ptr<float>(1);
|
||||
std::cout<<"Please type 10 coordinate pairs\n";
|
||||
std::cout<<"Please type "<<num<<" coordinate pairs\n";
|
||||
for(int i = 0; i < curve.cols; ++i)
|
||||
{
|
||||
std::cout<<i<<"> ";
|
||||
@ -309,7 +318,7 @@ int perfromOperation(int operation, char** fileNames, const Config& config)
|
||||
std::cout<<keys[i]<<' '<<values[i]<<'\n';
|
||||
|
||||
cv::FileStorage fs(!config.output.empty() ? config.output : "curve.mat", cv::FileStorage::WRITE);
|
||||
fs<<"curve"<<curve;
|
||||
fs<<"cal"<<curve;
|
||||
fs.release();
|
||||
|
||||
std::cout<<"Curve saved to "<<(!config.output.empty() ? config.output : "curve.mat")<<'\n';
|
||||
|
Reference in New Issue
Block a user