Hi!
There are multiple approaches for this, and hopefully I can clear it up a bit for you. Generally, if you have many (and/or large images), what you would store in your model object is a pointer (file URL/path as string) to the image file. You then store the image file itself outside of the database, like a normal file (using NSFileManager for example). So there is no point in storing the images in a different table - what you probably want is to not have images in YapDatabase at all.
With that said - it's certainly possible to store images in databases. The reason to do it with a file pointer instead is that databases usually aren't optimised for large blobs of data like images.
You're saying that "sometimes a picture will be sent". If it's not common, and the images are small (like an emoji), then I see no reason to complicate things. In this case, you could store it in your model object directly. UIImage supports NSSecureCoding, so it's simple to store it just like the rest of your properties.
It's hard for a bystander to give you advice on which way to go with here. I think you need to evaluate your app, and consider the frequency/size of the images sent. If the images are large, like photos, or if they will be sent often, then I would recommend going with the file-based approach.