我需要?jiǎng)?chuàng)建四個(gè)箭頭(向上、向下、向左和向右)并將它們實(shí)時(shí)放在框架上。我正在做一些實(shí)時(shí)圖像處理工作,并根據(jù)我需要實(shí)時(shí)顯示箭頭的函數(shù)結(jié)果在框架上。從以下位置獲取幀后: public Mat onCameraFrame(CameraBridgeViewBase.CvCameraViewFrame inputFrame) { mRgba = inputFrame.rgba(); mGray = inputFrame.gray(); if(state){ myTask= new MyTask(); myTask.execute(mRgba); //need to write method to display arrow return mRgba; } return mRgba;}它調(diào)用異步任務(wù)來(lái)執(zhí)行方法識(shí)別并設(shè)置需要顯示哪個(gè)箭頭?,F(xiàn)在如果開(kāi)始幀和其他幀相同則返回1。我需要知道如何制作箭頭并將其顯示在框架上。我稍后將制定一個(gè)算法來(lái)確定方向,因此讓我們假設(shè)當(dāng) return 為 1 時(shí),我需要在框架中顯示向上箭頭。我的異步任務(wù)是:class MyTask extends AsyncTask<Mat, Void, Integer> { @Override protected void onPreExecute() { super.onPreExecute(); } @Override protected Integer doInBackground(Mat... mats) { if(!isCancelled()) return recognize(mats[0]); else return 0; } @Override protected void onPostExecute(Integer integer) { super.onPostExecute(integer); directionOfCamera=integer; } @Override protected void onCancelled() { super.onCancelled(); }}識(shí)別方法是:public int recognize(Mat inputFrame) { if (startedFrame){ deskriptor.detect(inputFrame,keypoints1); deskriptor.compute(inputFrame,keypoints1,deskriptor1); startedFrame=false; return 0; }基本上它應(yīng)該是這樣的:如果缺少任何有用的代碼,請(qǐng)告訴我并添加它。
如何繪制箭頭,放在框架上并實(shí)時(shí)顯示?
明月笑刀無(wú)情
2021-09-15 11:00:13