2024年3月21日 星期四

week05

 #OpenCV安裝

1.桌面\葉正聖老師上課軟體\OpenCV

2.小心1:Add OpenCV  to...PATH

3.小心:安裝要在預設的C:\OpenCV2.1目錄裡

4.請安裝完後重開Codeblocks

5.設定Setting-Compiler要加入3個設定

5.1 search 目錄 Compiler 的 include目錄 加C:\OpenCV2.1\include

5.2 search 目錄 Linker 的 lib 目錄C:\OpenCV2.1\lib

5.3 加入Linker 的 3個檔名 cv210 cxcore210 highgui210

#week05-1

1.打程式碼

2.搜尋圖片,另存圖片到C曹

#include<opencv/highgui.h>

int main()

{

    IplImage*img=cvLoadImage("c:/image.jpg");

    cvShowImage("week05",img);

    cvWaitKey(0);

}


1.下載課本範例https://jsyeh.org/3dcg10/



2.window.zip解壓縮

3.data.zip解壓縮



4.執行Texture.exe
5.改glTexCoord2f(tx,ty);貼圖座標,glVertex3f(x,y,z);頂點

#week05_opencv_cvLoadImage
 0. 桌面安裝 freeglut,把 lib 的l ibfreeglut.a複製成 libglut32.a
1.File-New-Project ,Glut 專案week05_opencv_cvLoadImage.cpp
2.貼上11行
3.修改程式碼

#include <GL/glut.h>
#include <opencv/highgui.h>
void display()
{
    glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
    glutSolidTeapot(0.3);
    glutSwapBuffers();
}

int main(int argc, char*argv[])
{
    IplImage*img=cvLoadImage("c:/image.jpg");
    cvShowImage("opencv",img);
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("week05");
    glutDisplayFunc(display);
    glutMainLoop();
}




#week05_opencv_opengl_myTexture

1.File-New-Project ,Glut 專案week05_opencv_opengl_myTexture
2.在moodle老師有一個Github Gist網址,裡面有myTexture.cpp
3.貼到你專案的main.cpp的前18行
4.後面10行,貼你之前的GLUT程式
5.最後的glutMainLoop()之前,加入myTexture("c:/image.jpg");





##week05_opencv_opengl_myTexture_glTexCoord2f
1.File-New-Project ,Glut 專案week05_opencv_opengl_myTexture_glTexCoord2f
2.貼上剛剛的程式week05_opencv_opengl_myTexture
3.加入課本的四行程式
```cpp
glBegin(GL_POLYGON);
    glTexCoord2f(0,0); glVertex2f(-1,-1)
    glTexCoord2f(0,1); glVertex2f(-1,+1)
    glTexCoord2f(1,1); glVertex2f(+1,+1)
    glTexCoord2f(1,0); glVertex2f(+1,-1)
glEnd();
```
4.背景圖上下顛倒



##week05_roating_eath
0.google:earth mapp 找圖片,滿版地圖
1.File-New-Project ,Glut 專案week05_roating_eath
2.把week05_opencv_opengl_myTexture貼到新專案
3.修改程式碼

















沒有留言:

張貼留言