1. 程式人生 > >OpenCV程式設計->影象三維空間旋轉並投影到XY平面

OpenCV程式設計->影象三維空間旋轉並投影到XY平面

//////////////////////////////////////////////////////////////////
	//////////////////////////旋轉矩陣  平移矩陣測試//////////////////
	//////////////////////////////////////////////////////////////////
	//	旋轉矩陣R 轉為旋轉向量 rvecs
	Mat rvecs; //旋轉向量
	Rodrigues(R,rvecs);
	Point3f point3f;
	Mat map1(img2.rows, img2.cols, CV_32FC1);
	Mat map2(img2.rows, img2.cols, CV_32FC1);
	Mat object_Matrix = (Mat_<double>(3, 1) << 0, 0, 0);
	//對影象的座標進行變換
	for (int i = 0; i < img2.rows; i++)
	{
		for (int j = 0; j < img2.cols; j++)
		{
			object_Matrix.at<double>(0, 0) = i;
			object_Matrix.at<double>(1, 0) = j;
			object_Matrix.at<double>(2, 0) = 0;
			object_Matrix = object_Matrix + T;
			object_Matrix = R*object_Matrix;
			map1.at<float>(i, j) = object_Matrix.at<double>(1, 0);
			map2.at<float>(i, j) = object_Matrix.at<double>(0, 0);
		}
	}
	Mat imgk;
	remap(img1, imgk, map1, map2, CV_INTER_LINEAR);

相關推薦

OpenCV程式設計->影象三維空間旋轉投影XY平面

////////////////////////////////////////////////////////////////// //////////////////////////旋轉矩陣 平移矩陣測試////////////////// ///////////

如何用Opencv影象的灰度投影曲線

   眼睛定位方法中利用灰度投影函式,假設I(x,y)表示點(x,y)處的畫素灰度值, 在區間[x1,x2]和[y1,y2] 內的垂直積分投影函式 int* v = NULL;//垂直投影    int* h = NULL;//水平投影   CvScalar s,t;//

PIL 影象旋轉儲存

from PIL import Image # 讀取圖片 img = Image.open(r'./000001.jpg') # 轉化為alpha層 img_alpha = img.convert('RGBA') # 旋轉影象 rot = img_alpha.rotate(45, expand

opencv練習:將兩幅同樣大小的影象想減顯示結果

  (2011-08-10 14:51:05) 轉載▼ 標籤: 雜談   關鍵函式cvAbsDiff() ,程式碼如下:

0031-在OpenCV環境下做旋轉文字影象的矯正!

直接上程式碼和執行結果截圖,具體的原理大家可以訪問下面的連結檢視! 連結:http://johnhany.net/2013/11/dft-based-text-rotation-correction/ 如果上面的連結訪問不了,可以下載我離線儲存的網頁檔案檢視,下載連結如下: 連結:http://

OpenCV-Python之影象直方圖的反向投影

這個技術常常用來跟蹤目標,且需要轉換在HSV色彩空間 1.建立2D直方圖 import cv2 as cv import matplotlib.pyplot as plt import numpy as np def hist2D_demo(image): hsv =

opencv讀取影象畫素值讀取儲存到txt檔案(二)灰度圖

#include "stdafx.h" #include"cv.h" #include <stdlib.h> #include <stdio.h> #include <math.h> #include <fstream> #include &l

opencv讀取影象畫素值讀取儲存到txt檔案(一)RGB

#include “stdafx.h” #include"cv.h" #include <stdlib.h> #include <stdio.h> #include <math.h> #include #include #include “iost

基於opencv影象縮放,旋轉,透視變換。

工具程式碼: #define WARPSTEPSIZE 0.2; #define RESIZESTEPSIZE 0.1; #define ROTATESTEPSIZE 10; float g_H_value = 0; float g_resize_value = 0;

OpenCV影象矩陣翻轉、轉置和特殊旋轉

在OpenCV中對影象進行翻轉和轉置的函式,可以很方便對影象進行特殊角度的旋轉! 影象翻轉函式 cv::flip(mat_src,mat_dst,flag) 其中, flag=0 繞X軸(水平軸)翻轉 flag>0 繞Y軸(垂直軸)翻轉 flag<0

基於opencv影象旋轉匹配

.h檔案 #ifndef _OPENCV_fftm_HPP_ #define _OPENCV_fftm_HPP_ #ifdef __cplusplus #include "opencv2/core.hpp" #include "opencv2/opencv.hpp" //

opencv學習---計算影象的水平積分投影和垂直積分投影

#include<opencv2\opencv.hpp> #include<stdio.h> using namespace cv; Mat VerticalProjection(Mat srcImage)//垂直積分投影 { if (srcImage.channels() >

使用Python和OpenCV檢測影象中的物體將物體裁剪下來

介紹 碩士階段的畢設是關於昆蟲影象分類的,程式碼寫到一半,上週五導師又給我新的昆蟲圖片資料集了,新圖片中很多圖片很大,但是圖片中的昆蟲卻很小,所以我就想著先處理一下圖片,把圖片中的昆蟲裁剪下來,這樣除去大部分無關背景,應該可以提高識別率。 原圖片舉例(將紅色

OpenCV數字影象處理】(4) 【Python程式設計】(4) 平移

配套使用的OpenCV版本:2.4.9 ; Python版本:2.7 主要參考文章(感謝作者分享) 程式極其類似於參考文章1、文章1使用的是OpenCV2.0,而OpenCV2.49的寫法稍有不同 效果參考文章1,語法參考文章2 主要思想(轉載自文章1)

影象扭正確。利用OpenCV檢測影象中的長方形畫布或紙張提取影象內容

也就是在一張照片裡,已知有個長方形的物體,但是經過了透視投影,已經不再是規則的長方形,那麼如何提取這個圖形裡的內容呢?這是個很常見的場景,比如在博物館裡看到一幅很喜歡的畫,用手機找了下來,可是回家一看歪歪斜斜,腦補原畫內容又覺得不對,那麼就需要演算法輔助來從原圖裡提取原來的內容了。不妨把應用的場景分為以下

OpenCV(Python)學習筆記(One):幾何變換之對影象旋轉

 最近學習中會用到OpenCV,感覺OpenCV簡單且功能強大,Python語言也簡單易用,於是就學了Python版OpenCV。裡面講的比較簡單,就先從簡單的入手吧。 因為已經學習一段時間了,所以文章並不是按照OpenCV的順序來寫的,我會慢慢補齊以前學過的一些例子。 都是些簡單

使用OpenCL+OpenCV實現影象旋轉(一)

[題外話]近期申請了一個微信公眾號:平凡程式人生。有興趣的朋友可以關注,那裡將會涉及更多更新OpenCL+OpenCV以及影象處理方面的文章。 最近在學習《OPENCL異構計算》,其中有一個例項是使用OpenCL實現影象旋轉。這個例項中並沒有涉及讀取、儲存、顯示影象等操作

OpenCV--讀取影象中任意點的畫素值,顯示座標

需求:在滑鼠左鍵按下時,顯示該位置的畫素值和座標。 在vs2010下新建了Win32控制檯專案,在此只處理灰度影象,顯示的畫素值為灰度值 #include "iostream"

OpenCV擷取影象ROI保存於指定路徑

<span style="font-size:10px;"><span style="font-size:12px;">#include <cv.h> #include<highgui.h> int main() { //Loading the origin

手把手教你用MFC和OpenCV,製作mfc讀取顯示影象(兩種方式)

MFC OpenCV 讀取並顯示影象 *************************************************完成的效果如圖******************************************** 前言:我用的是VS2013 + O