का उपयोग कर साइन लहर खींचना मैं ओपनसीवी का उपयोग कर एक छवि पर साइन लहर बनाना चाहता हूं। मैं निम्नलिखित कोड विकसित की है, लेकिन उत्पादन की उम्मीद के रूप में नहीं आ रहा है:ओपनसीवी
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include "opencv/cv.h"
#include "opencv/highgui.h"
void main()
{
double y[100];
float x;
for(x=0;x<100;x++)
{
y[(int)floor(x)]=sin(x);
}
IplImage *grf = cvCreateImage(cvSize(200, 200), IPL_DEPTH_8U, 1);
for(int x=0;x<100;x++)
{
cvLine(grf , /* the dest image */
cvPoint(x, y[x]), /* start point */
cvPoint(x+1, y[x+1]), /* end point */
CV_RGB(255, 0, 0), /* the color; green */
2, 4, 0); /* thickness, line type, shift */
}
cvNamedWindow("img", CV_WINDOW_AUTOSIZE);
cvShowImage("img", grf);
cvWaitKey(0);
cvDestroyWindow("img");
cvReleaseImage(&grf);
}
मैं मान y सरणी में आ रहा है सत्यापित किया है सही है, और MATLAB का उपयोग कर इन y मूल्यों साजिश रची। MATLAB साजिश एक साइन लहर आ रही है। क्या आप मुझे बता सकते हैं कि मुझे उपरोक्त कोड का उपयोग करके सही साजिश क्यों नहीं मिल रही है।
साइन लहर की मेरी आउटपुट साजिश नीचे आ रही है: आप देख सकते हैं कि मुझे साइन लहर की बजाय क्षैतिज रेखा मिल रही है। इसके बारे में कोई मदद?
हल:
धन्यवाद
परफेक्ट से एक तरंग लहर देना चाहिए !! आपकी त्वरित सहायता के लिए धन्यवाद – geeta
@geeta आपका स्वागत है! – Alex
इसके बजाय इसका उपयोग किया गया, y [(int) floor (x)] = 100 + 20 * पाप (0.4 * .1 * पीआई * एक्स) आपके सुझावों के बाद; साजिश ऊपर है। धन्यवाद – geeta