二十五、爬取毛豆新車的數(shù)據(jù)
1712
2025-03-31
0. 參考資料:
Windows10下配置VSCode、Mingw、Cmake、Eigen、OpenCV環(huán)境(為GAMES101作業(yè)構(gòu)筑Win環(huán)境)
games101【作業(yè)0】環(huán)境配置——windows環(huán)境配置
1. 基礎(chǔ)軟件依賴
關(guān)于gcc與cmake的安裝參考之前博文
https://bbs.huaweicloud.com/blogs/336631
https://bbs.huaweicloud.com/blogs/344843
注意:
cmake安裝的時(shí)候選擇Add CMake to the system PATH for all users,加入系統(tǒng)環(huán)境變量的路徑,保證可以在命令行使用
命令行輸入cmake --help,驗(yàn)證是否安裝成功
mingw要選擇posix版本的Mingw下載,否則編譯opencv時(shí)會(huì)出錯(cuò)
mingw安裝時(shí)解壓到任意地方,并且把bin的路徑添加到系統(tǒng)環(huán)境變量PATH中,完成后在命令行輸入g++ -v,驗(yàn)證是否安裝成功
2. 第三方庫(kù)的編譯和安裝
2.1 Eigen(線性代數(shù)運(yùn)算庫(kù))
-:Eigen
安裝說(shuō)明:
注意版本要與opencv之間關(guān)聯(lián),這里選擇3.4.0 版本安裝
在eigen的根目錄下新建一個(gè)build目錄
打開(kāi)cmake軟件,source目錄設(shè)置成eigen的根目錄,build目錄設(shè)置成剛剛新建的目錄,然后點(diǎn)擊configure,出來(lái)的makefile的格式選擇mingw,等待config結(jié)束后點(diǎn)擊generate。
管理員權(quán)限運(yùn)行cmd,進(jìn)入build目錄,運(yùn)行mingw32-make,之后運(yùn)行mingw32-make install
注:此時(shí)就可以刪除解壓出來(lái)的eigen目錄(因?yàn)樯厦姘惭b的已經(jīng)安裝到了c盤Program File x86里了,有時(shí)候build的時(shí)候會(huì)找錯(cuò)路徑)
2.2 OpenCV庫(kù)編譯
-opencv-win
解壓到任意目錄,opencv/source/目錄下新建一個(gè)build目錄
打開(kāi)cmake軟件,source目錄設(shè)置成opencv/source/目錄,build目錄設(shè)置成剛剛新建的build目錄,然后點(diǎn)擊configure,出來(lái)的makefile的格式選擇mingw,等待config結(jié)束
找到OPENCV_ENABLE_ALLOCATOR_STATS,不勾選后面的對(duì)勾(不這樣會(huì)編譯錯(cuò)誤), 再次點(diǎn)擊configure,之后點(diǎn)擊generate
以管理員權(quán)限運(yùn)行cmd,進(jìn)入build目錄,運(yùn)行mingw32-make(這個(gè)很慢),之后運(yùn)行mingw32-make install
設(shè)置opencv的環(huán)境變量,管理員權(quán)限運(yùn)行cmd, 執(zhí)行 setx -m OpenCV_DIR path_to_build/lib/(本質(zhì)就是增加環(huán)境變量OPENCV_DIR),然后把path_to_build/bin添加到path系統(tǒng)環(huán)境變量里
以上用到工具及軟件的版本信息如下:
gcc: x86_64-8.1.0-release-posix-seh-rt_v6-rev0.7z
cmake: cmake-3.23.0-windows-x86_64.msi
eigen: eigen-3.4.0.zip
opencv: opencv-4.5.5-vc14_vc15.exe
3. CMakeLists文件適配
由于上文已經(jīng)在環(huán)境變量中設(shè)置了EIGEN3_INCLUDE_DIR變量。因此一下配置文件中要增加環(huán)境變量前綴$ENV{}
cmake_minimum_required (VERSION 2.8.11) project (Transformation) find_package(Eigen3 REQUIRED) include_directories($ENV{EIGEN3_INCLUDE_DIR}) add_executable (Transformation main.cpp)
4. 關(guān)于作業(yè)0的說(shuō)明
本次作業(yè)要點(diǎn):
環(huán)境搭建與使用
Eigen線代庫(kù)的使用說(shuō)明
Eigen的入門材料:
https://blog.csdn.net/hongge_smile/article/details/107296658
作業(yè)情況說(shuō)明:
目標(biāo)實(shí)現(xiàn)向量旋轉(zhuǎn)
/* * Task 0 * 給定一個(gè)點(diǎn) P=(2,1), 將該點(diǎn)繞原點(diǎn)先逆時(shí)針旋轉(zhuǎn) 45?,再平移 (1,2), 計(jì)算出 * 變換后點(diǎn)的坐標(biāo)(要求用齊次坐標(biāo)進(jìn)行計(jì)算)。 */ // TODO: Define point P Eigen::Vector3d P(2.0f, 1.0f, 1.0f); // TODO: Define rotation matrix and transposion matrix Eigen::Matrix3d R; Eigen::Matrix3d T; double theta = 45.0 / 180.0 * M_PI; R << cos(theta), -1.0 * sin(theta), 0, sin(theta), sin(theta), 0, 0, 0, 1; T << 1, 0, 1, 0, 1, 2, 0, 0, 1; // TODO: T * R * P Eigen::Vector3d Res; Res = T* R * P; std::cout << Res << std::endl; return 0; //result: 1.70711 4.12132 1
VR視頻 圖像處理 渲染 游戲開(kāi)發(fā)
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。