Advertisement
Guest User

Untitled

a guest
Jun 22nd, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.13 KB | None | 0 0
  1. private: System::Void lowpassFilterToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e)
  2. {
  3. int w = dataManager->GetImageWidth();
  4. int h = dataManager->GetImageHeight();
  5.  
  6. // 利用傅立葉之平移性,平移頻率
  7. for (int i = 0; i < h; i++)
  8. {
  9. for (int j = 0; j < w; j++)
  10. {
  11. int valuePixeli = dataManager->GetInputImage()[i][j];
  12. valuePixeli = valuePixeli * pow((float)-1, (float)(i + j));
  13. dataManager->SetPixel(j, i, valuePixeli);
  14. }
  15. }
  16.  
  17. //將算出頻率資訊傳入輸出影像
  18. fourierTransformMethod->LowpassFilter(dataManager->GetInputImage(), dataManager->GetOutputImage(), dataManager->GetFreqReal(), dataManager->GetFreqImag(), h, w);
  19. Bitmap^ LPF = gcnew Bitmap(w, h);
  20. for (int i = 0; i < h; i++)
  21. {
  22. for (int j = 0; j < w; j++)
  23. {
  24. int valuePixeli = dataManager->GetOutputImage()[i][j];
  25. if (valuePixeli > 255)
  26. {
  27. valuePixeli = 255;
  28. }
  29. else if (valuePixeli < 0)
  30. {
  31. valuePixeli = 0;
  32. }
  33. LPF->SetPixel(j, i, Color::FromArgb(valuePixeli, valuePixeli, valuePixeli));
  34. }
  35. }
  36. pictureBox_OutputImage->Image = LPF;
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement