日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

图像处理职位面试题汇总(3)

發布時間:2023/12/20 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 图像处理职位面试题汇总(3) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

圖像處理基礎部分

1. 敘述GABOR濾波器原理?

2. Graph-cut的基本原理和應用

3. 常用的分類器有哪些,并簡述其原理?

4. 簡述SVM,GMM, SIFT/SURF和LDA/PCA的基本原理

5. 簡述監督學習和非監督學習的區別并舉例說明

6. 常用的顏色空間有哪些?各有什么特征?

7. Random Forest的隨機性表現在哪里

8. 常用的圖像分割算法有哪些,各有什么優缺點?

9. 數學形態中有哪些常用的算法,各算法的功能?

10. 常用紋理特征有哪些?

11. 常用聚類方法有哪些,并簡述其原理?

12. 小波分析中常用的小波有哪些?經過一層小波分解后相關特性?

13. 椒鹽噪聲用什么濾波處理比較有效?

14. 圖像的像素數與分辨率有什么區別?

15.簡述你熟悉的聚類算法并說明其優缺點。

16. 請說出使用過的分類器和實現原理。

C/C++部分

1.? Windows中的消息是什么意思?簡述一下windows中的消息機制?

解:消息就是在事件驅動模式下,事件發布函數和具體功能執行函數(或者代碼段)之間的調用協議,調用協議的執行表現為窗口事件發布函數跟具體功能執行函數(或者代碼段)之間的選擇關系。在Windows系統下(下面所述均為Windows系統),對計算機外設的操作,例如當用戶敲擊鍵盤鍵、點擊鼠標、熱插拔USB盤等,系統都認為外設發生了事件,于是系統調用專職函數就把這些事件進行收集,形成現場信息,賦值給一個叫做“消息結構體”的對象,那么這個被賦予特定意義的消息結構體對象就可以稱之為“消息”;然后,專職函數再把這個“消息”投遞到(Post)到系統中一個專職消息管理的機構中去,這個過程就完成了消息形成和投遞。可以這樣想象這個所謂的“消息管理機構”的主要運作:

  • 系統每時每刻都有可能發生事件,所發事件都是針對某個或者某些具體應用程序的,所以計算機需要先對這些由事件形成的消息進行集中收集,并完成存操作(即消息投遞),一般來說新來的消息都存放在靠后位置,也就是嚴格按照先來后到的時間順序進行存操作的;
  • 再由系統專職函數對這些消息進行讀取,完成取操作。取操作跟存操作剛好相反,是從頭開始的,就是先取存放時間最早的那個消息。然后,這些專職函數根據所取的消息的參數的含義,把所取的消息再投遞到指定的應用程序的“消息管理機構”中去。
在上面這些過程中,系統內的這個“消息管理機構”就叫做系統消息隊列,系統消息隊列就是起到集中收集、集中管理外設消息的。但系統設立的“系統消息隊列”這個機構不光是為集中管理計算機外設消息的,有時侯它還負責管理系統內部事件所引發的消息的,比如用戶登錄和注銷、進程啟動和退出等。

2.Windows中的進程與線程理解,它們之間有什么關系?

解:Windows中的進程簡單地說就是一個內存中的可執行程序,?提供程序運行的各種資源.?進程擁有虛擬的地址空間,?可執行代碼,?數據,?對象句柄集,?環境變量,?基礎優先級,?以及最大最小工作集. Windows中的線程是系統處理機調度的基本單位.?線程可以執行進程中的任意代碼,?包括正在被其他線程執行的代碼.?進程中的所有線程共享進程的虛擬地址空間和系統資源.?每個線程擁有自己的例外處理過程,?一個調度優先級以及線程上下文數據結構.?線程上下文數據結構包含寄存器值,?核心堆棧,?用戶堆棧和線程環境塊.

進程的虛擬地址空間,首先可以把"虛擬"這個詞拿掉,?對于簡化進程模型有很大幫助(當對進程/線程和虛擬內存部分都充分理解后,?那時結合起來再考量會有更深程度的掌握). 地址空間就是系統給予進程的,?進程內任何可執行代碼都可以感知的內存區域.(注意,?這里用了"感知"一詞而不是訪問,?其中的原因可以在后面講解中找到) 問題:?地址空間有多大??基地址和最大地址是什么?系統尋址能力決定了地址空間的大小.?主流的Windows系統是32位系統,?尋址能力是32位(形象的說就是指針是32位的),?所以地址空間的大小是4GB.?地址空間的基地址為0x00000000,?最大地址是0xFFFFFFFF.?4GB的地址空間被劃分為2個大的內存區域,?用戶區和系統區.

進程和線程的關系?--?進程是容器:每個windows進程開始于它的被默認創建的第一個線程,?通常稱其為主線程.?這種機制暗示了一個事實:?進程含有至少一個線程.?主線程和其它的線程沒有任何區別,?每個線程都可以創建新的線程.?進程中所有線程都結束時進程會自動被結束,?而主動結束進程時,?如果還有線程沒完成,?則系統自動結束這些線程.在windows中,?進程不再是處理機資源分配的最小單位,?那么它還是一個動態的實體嗎??是的,?從多進程并發的角度來看,?進程仍然是一個動態的實體,?但它的動態是它的線程的動態特征的抽象.?舉個例子,?一個進程含有3個線程,?那么當3個線程都阻塞時,?進程表現為阻塞.?但只要有一個線程是就緒態,?哪怕其它2個線程是阻塞態,?進程仍然表現為就緒. 從線程的角度看,?進程表現的更像一個容器,?它代表線程接受分配到的資源(除處理機資源),?為線程提供主體(執行代碼+數據),?自己卻沒有運行的概念.?此時,?進程是靜態的實體.

3. 64位與32位操作系統有什么區別?

解:術語“32 位”“64 位”是指計算機的處理器(也稱為“CPU”)處理信息的方式。64 位版本的Windows 可處理大量的隨機存取內存 (RAM),其效率遠遠高于 32 位的系統。64bit計算主要有兩大優點:可以進行更大范圍的整數運算;可以支持更大的內存。不能因為數字上的變化,而簡單的認為64bit處理器的性能是 32bit處理器性能的兩倍。實際上在32bit應用下,32bit處理器的性能甚至會更強,即使是64bit處理器,目前情況下也是在32bit應用下性能更強。所以要認清64bit處理器的優勢,但不可迷信64bit。

內存這是64位系統最顯著的優點,它可以使用超過4GB的內存 。大多數新的臺式機和筆記本電腦至少擁有4GB的內存。問題是,像Vista和Win 7的32位版本只能夠用大約3GB的內存 。相比之下,64位的Windows 不僅可以利用高達192GB的內存,還能夠使用的內存映射取代BIOS的功能,從而使操作系統真正使用完整的4GB的。因此,如果您安裝Win7 x64,對于有的4GB內存的機器你不會浪費1GB內存。

4. C++中的this理解?

解: 我們 要理解class的意思。class應該理解為一種類型,象int,char一樣,是用戶自定義的類型。(雖然比int char這樣build-in類型復雜的多,但首先要理解它們一樣是類型)。用這個類型可以來聲明一個變量,比如int x, myclass my等等。這樣就像變量x具有int類型一樣,變量my具有myclass類型。理解了這個,就好解釋this了,my里的this 就是指向my的指針。如果還有一個變量myclass mz,mz的this就是指向mz的指針。 這樣就很容易理解this 的類型應該是myclass *,而對其的解引用*this就應該是一個myclass類型的變量。通常在class定義時要用到類型變量自身時,因為這時候還不知道變量名(為了通用也不可能固定實際的變量名),就用this這樣的指針來使用變量自身。
  • this指針的用處:一個對象的this指針并不是對象本身的一部分,不會影響sizeof(對象)的結果。this作用域是在類內部,當在類的非靜態成員函數中訪問類的非靜態成員的時候,編譯器會自動將對象本身的地址作為一個隱含參數傳遞給函數。也就是說,即使你沒有寫上this指針,編譯器在編譯的時候也是加上this的,它作為非靜態成員函數的隱含形參,對各成員的訪問均通過this進行。例如,調用date.SetMonth(9) <===> SetMonth(&date, 9),this幫助完成了這一轉換 .
  • this指針的使用一種情況就是,在類的非靜態成員函數中返回類對象本身的時候,直接使用 return *this;另外一種情況是當參數與成員變量名相同時,如this->n = n (不能寫成n = n)。

5. C++中虛函數有什么作用?

解:我們都知道,c++為了與c語言能夠兼容,c++做出了很大的犧牲,包括保留了struct關鍵字,還有編譯期間添加了好多隱藏的代碼。但是虛函數卻不能與c語言實現兼容。而且有了虛函數,類的數據對象布局都發生了巨大的變化。這些暫時不說,還是回到上面的問題吧!我們都知道函數可以分為三種,一種是類的成員函數(member function),又可分為非靜態成員函數(non-static member function),以及靜態成員函數(static member function),而還有一種非類的成員函數(non-member function)。在類的非靜態成員函數中又可以分為普通的函數以及虛函數。根據這種函數的分類,就知道了函數絕對是不能同時為虛函數以及靜態成員函數的。對虛函數還可以繼續細分,一是純虛函數,一種就是普通的虛函數。純虛函數必須在普通的虛函數基礎上加上“=0”,同時普通的虛函數必須要有函數的實現。而純虛函數默認情況是只有定義,而無需實現的,即只是定義一個接口(當然也可以實現,這時實現認為是默認的一種狀態顯示),同時包含了純虛函數的類表明該類時一個抽象類,不能定義該類的對象,也就是說該類被定義成基類,是要被繼承的,通過繼承類來完成基類對象的生成。最后,強調一下,虛函數必須有一個關鍵字來修飾:virtual ,同時不能有static修飾。

虛函數的作用?我們知道面向對象語言的意義是讓程序用一種符合人的思維來運行,而虛函數在c++面向對象語言的實現中起著舉足輕重的作用。簡而言之,虛函數的作用就是實現“動態聯編”,也就是在程序的運行階段動態地選擇合適的成員函數。具體的實現方式是:在定義了虛函數后,可以在基類的派生類中對虛函數重新定義,在派生類中重新定義的函數應與虛函數具有相同的形參個數和形參類型。以實現統一的接口,不同定義過程。如果在派生類中沒有對虛函數重新定義,則它繼承其基類的虛函數。編譯器在編譯過程中發現類的函數名前的關鍵字virtual后,會自動將其作為動態聯編處理,即在程序運行時動態地選擇合適的成員函數,具體的實現機制下篇再講。

這里提前說一下,類的靜態成員函數與非類的成員函數對于類對象來說,訪問函數的效率相當,都是在編譯器確定,而虛函數需要在運行期確定,所以效率較低(符合上帝是公平的規律吧)。虛函數的使用?正確的使用虛函數是一個比較簡單的問題。要實現動態聯編,即只能用一個基類的指針或者引用來指向派生類對象,為什么必須要這樣,見后面的虛函數實現機制。而把派生類對象賦值或者拷貝給基類的對象,只能實現派生類隱式轉換成基類,即在編譯器完成了派生類的截斷,不能達到動態聯編得作用。

6.Static理解?

解:static關鍵字是C, C++中都存在的關鍵字。static從字面理解,是“靜態的“的?意思,與此相對應的,應該是“動態的“。static的作用主要有以下3個:

1、擴展生存期

這一點主要是針對普通局部變量和static局部變量來說的。聲明為static的局部變量的生存期不再是當前作用域,而是整個程序的生存期。在程序中,常用內存類型主要有堆、棧和靜態存儲區。要理解static局部變量就必須首先理解這三種內存類型。在C/C++中,?局部變量按照存儲形式可分為三種auto, static, register

  • 局部變量的默認類型都是auto,從棧中分配內存。auto的含義是由程序自動控制變量的生存周期,通常指的就是變量在進入其作用域的時候被分配,離開其作用域的時候被釋放。而static變量,不管是局部還是全局,都存放在靜態存儲區。表面意思就是不auto,變量在程序初始化時被分配,直到程序退出前才被釋放;也就是static是按照程序的生命周期來分配釋放變量的,而不是變量自己的生命周期.?如果在main前設置斷點,然后查看static變量,已經被初始化,也就是說static在執行main函數前已經被初始化。也就是在程序初始化時被分配。
  • 堆:由程序員自己分配釋放(用malloc和free,或new和delete)?,如果我們不手動釋放,那就要到程序結束才釋放。如果對分配的空間在不用的時候不釋放而一味的分配,那么可能會引起內存泄漏,其容量取決于虛擬內存,較大。棧:由編譯器自動分配釋放,其中存放在主調函數中被調函數的下一句代碼、函數參數和局部變量,容量有限,較小。靜態存儲區:由在編譯時由編譯器分配,由系統釋放,其中存放的是全局變量、static變量和常量.區別:1)???堆是由低地址向高地址擴展,棧是由高地址向低地址擴展。2)???堆是不連續的空間,棧是連續的空間。3)???在申請空間后,棧的分配要比堆的快。對于堆,先遍歷存放空閑存儲地址的鏈表、修改鏈表、再進行分配;對于棧,只要剩下的可用空間足夠,就可分配到,如果不夠,那么就會報告棧溢出。4)???棧的生命期最短,到函數調用結束時;靜態存儲區的生命期最長,到程序結束時;堆中的生命期是到被我們手動釋放時(如果整個過程中都不手動釋放,那就到程序結束時)。
  • 2、限制作用域

    這一點相對于普通全局變量和static全局變量來說的。對于全局變量而言,不論是普通全局?變量還是static全局變量,其存儲區都是靜態存儲區,因此在內存分配上沒有什么區別。區別在于:

  • 普通的全局變量和函數,其作用域為整個程序或項目,外部文件(其它cpp文件)可以通過extern關鍵字訪問該變量和函數。一般不提倡這種用法,如果要在多個cpp文件間共享數據,應該將數據聲明為extern類型。在頭文件里聲明為extern: extern int g_value; // 注意,不要初始化值!然后在其中任何一個包含該頭文件的cpp中初始化(一次)就好:int g_value = 0;? ???//?初始化一樣不要extern修飾,因為extern也是聲明性關鍵字;然后所有包含該頭文件的cpp文件都可以用g_value這個名字訪問相同的一個變量;
  • static全局變量和函數,其作用域為當前cpp文件,其它的cpp文件不能訪問該變量和函數。如果有兩個cpp文件聲明了同名的全局靜態變量,那么他們實際上是獨立的兩個變量。static函數的好處是不同的人編寫不同的函數時,不用擔心自己定義的函數,是否會與其它文件中的函數同名。
  • 頭文件中的static變量如果在一個頭文件中聲明:static int g_vaule = 0; 那么會為每個包含該頭文件的cpp都創建一個全局變量,但他們都是獨立的;所以也不建議這樣的寫法,一樣不明確需要怎樣使用這個變量,因為只是創建了一組同名而不同作用域的變量。
  • 3、數據唯一性

    這是C++對static關鍵字的重用。主要指靜態數據成員/成員函數。表示屬于一個類而不是屬于此類的任何特定對象的變量和函數.?這是與普通成員函數的最大區別,?也是其應用所在,?比如在對某一個類的對象進行計數時,?計數生成多少個類的實例,?就可以用到靜態數據成員.在這里面, static既不是限定作用域的,?也不是擴展生存期的作用,?而是指示變量/函數在此類中的唯一性.這也是”屬于一個類而不是屬于此類的任何特定對象的變量和函數”的含義.?因為它是對整個類來說是唯一的,?因此不可能屬于某一個實例對象的. (針對靜態數據成員而言,?成員函數不管是否是static,?在內存中只有一個副本,?普通成員函數調用時,?需要傳入this指針, static成員函數調用時,?沒有this指針.?)

    static數據成員的初始化:1) 初始化在類體外進行,而前面不加static,以免與一般靜態變量或對象相混淆。2)?初始化時不加該成員的訪問權限控制符private,public等。3)?初始化時使用作用域運算符來標明它所屬類,因此,靜態數據成員是類的成員,而不是對象的成員。4)?靜態數據成員是靜態存儲的,它是靜態生存期,必須對它進行初始化。

    Static成員函數:靜態成員函數和靜態數據成員一樣,它們都屬于類的靜態成員,它們都不是對象成員。因此,對靜態成員的引用不需要用對象名。靜態成員函數僅能訪問靜態的數據成員,不能訪問非靜態的數據成員,也不能訪問非靜態的成員函數,這是由于靜態的成員函數沒有this指針。

    7. 求一個正整數N的開方,要求不能用庫函數sqrt(),結果的精度在0.001.

    解:牛頓迭代

    #include<iostream> using namespace std; int main() { int N; cout<<"輸入N的值:"; cin>>N double x1 = 1; double x2 = x1/2.0+N/2.0/x1; while( fabs(x2-x1)>0.001) { x1 = x2; x2 = x1/2.0+N/2.0/x1; } cout<<x1<<endl; return 0; }

    邏輯和概率部分

    1. a和b兩個人每天都會在7點-8點之間到同一個車站乘坐公交車,a坐101路公交車,每5分鐘一班【7:00,7:05....】,b坐102路公交車,每10分鐘一班【7:03,7:13...】,問a和b碰面的概率是多少?

    解:

    ab?????????

    上圖表示7點-8點之間的60分鐘區間內, a、b兩人可用的乘車時間點(a上b下)

    可以看出每10分鐘有一個最小循環, 那么可以先就前10分鐘的區間進行分析.

    以b為主體, b的時間可以被各時間點切成三份(30?3,23?5,55?10), 那么在這個區間里, 兩人相遇的概率是

    360×30?360+260×130?1360+560×85?1360=753600

    需要注意的是后兩項"使用了"下一個循環區間的時間, 因此需要單獨考慮最后10分鐘的相遇概率

    360×350?5360+260×1050?6060+560×555?6060=543600

    匯總的相遇概率為

    753600×5+543600=1431200

    2.假設某日是否有雨只和前一日是否有雨相關:今日有雨,則明日有雨的概率是0.7;今日無雨,則明日有雨的概率是0.5。如果周一有雨,求周三也有雨的概率

    解:

    轉移矩陣為

    A=(0.70.50.30.5)

    P(|)=[(1?0)A2]1,1=[(0.7?0.3)(0.70.50.30.5)]1,1=0.64

    3. 有 A 和 B 兩路公交車,平均發車間隔分別為 5 分鐘和 10 分鐘。某乘客在站點 S 可以 任意選擇兩者之一乘坐,假定 A 和 B 到達 S 的時刻無法確定,那么該乘客的平均等待時間約為多少?

    解:首先,平均等待時間即為等待時間的期望,倘若依照題意,發車間隔并不固定又如何呢?


    發車間隔不固定,那么 tA,tB 的值域變為[0,+),隨之而來的是另一個問題,概率密度分布是什么樣的?此時值域不再有限,無法使用均等分布。注意這里問題的關鍵字是等待,說起等待,首先就應該想到泊松分布(Poisson Distribution)和泊松過程(Poisson process)。這里,等車的過程就可以看作兩個相互獨立的泊松過程。泊松過程的平穩獨立增量假設十分重要,這意味著從任意時刻開始分布都是一樣的,也就是說并不存在等待越久公車更可能即將到來這件事情。由此,泊松過程中,兩次事件中的間隔時間服從指數分布,即

    tλe?λt,t?0

    平均間隔時間即期望間隔時間E[t]=+0tλe?λt?dt=1λ????(1)

    由這個結論加上已知可得tA15?e?15tA,tA?0;?tB110?e?110tB,tB?0

    那么仍然根據獨立假設,可得p(tA,tB)=15e?15tA110e?110tB,?tA?0,?tB?0

    此時積分有

    ??????????E[t]=+0+tBtB15e?15tA110e?110tB?dtA?dtB++0+tAtA15e?15tA110e?110tB?dtB?dtA

    ???????=+0tB110e?110tBe?15tB?dtB++0tA15e?15tAe?110tA?dtA

    ???????=+0x(15+110)?e?(15+110)x?dx

    ? ? ? ?? =115+110 ??

    ???????=313
    ===================================================================== 轉載請注明出處:http://blog.csdn.net/songzitea/article/details/13629389 =====================================================================

    總結

    以上是生活随笔為你收集整理的图像处理职位面试题汇总(3)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 日韩在线精品强乱中文字幕 | 可以在线观看av的网站 | 可以免费看的黄色网址 | 日韩欧美高清在线观看 | 久草视频免费看 | 精品人妻无码一区二区三区换脸 | 免费毛片视频 | 熟女毛毛多熟妇人妻aⅴ在线毛片 | 日产av在线播放 | 色就是色综合 | 青青草毛片 | 日韩亚州| 亚洲v在线观看 | 极品美女销魂一区二区三区 | 国产精品91久久 | 91亚洲精选 | 亚洲一二三四在线观看 | 蜜臀av在线免费观看 | 国产婷婷色一区二区三区 | 涩涩网站视频 | 亚洲一区二区高清 | 欧美a级在线 | 欧美三级韩国三级日本三斤在线观看 | 高潮毛片无遮挡高清免费 | a级黄色网址 | 国产精品一区二区毛片 | 亚洲天堂五码 | 日韩一区二区三区在线播放 | 免费日韩在线视频 | 久久偷看各类女兵18女厕嘘嘘 | 日韩欧美字幕 | 在线免费看av的网站 | 一级黄色伦理片 | 久久久久久色 | 日韩天堂视频 | 神马影院一区二区 | 91精品国产麻豆国产自产在线 | a√天堂资源 | 一区二区国产电影 | 国产精品久久久久久亚洲毛片 | 毛片小视频 | 日本熟妇一区二区三区 | 亚洲高清视频在线 | 久久成人黄色 | 四虎网址在线观看 | 黄色三级视频 | 好爽又高潮了毛片 | 国产一国产精品一级毛片 | 两性av | 自拍偷拍视频网 | 精品国产区一区二 | av免费看在线| 日本va视频 | 欧美色图一区二区 | 69福利社区 | 亚洲激情视频网站 | 男女做的视频 | 自拍偷拍亚洲欧洲 | 欧美草b | 中日韩在线视频 | 催眠美妇肉奴系统 | 亚洲韩国精品 | 操日本老太太 | 亚洲欧美另类激情 | 日本三级视频在线观看 | 波多野结衣www | 欧美午夜精品 | 日韩欧美中文字幕一区 | 天天爱夜夜操 | 六月婷婷在线 | 中文字幕一级 | 美女91网站| 亚洲妇女av | 91在线精品一区二区三区 | 日韩在线一 | 凹凸国产熟女精品视频 | 日本免费一区二区三区四区 | 一二三区中文字幕 | 久久免费视频3 | 精品国产日本 | 日本a级c片免费看三区 | 高潮喷水一区二区三区 | 久久毛片基地 | 亚洲视频在线观看免费 | 亚洲色图在线视频 | 手机av在线看 | 91在线观看视频网站 | 色婷婷久久综合中文久久蜜桃av | 国产传媒国产传媒 | 欧美午夜久久 | 亚洲国产精品无码久久久久高潮 | 久久亚洲av成人无码国产电影 | 91亚洲精品国偷拍自产在线观看 | 国产精品亚洲五月天丁香 | 最近最新mv字幕观看 | 国产精品嫩草69影院 | 麻豆免费视频 | 久久看片 | av手机免费观看 |